[Bug] Support group by natural year
- Lenguaje dominante
- Java
- Estrellas
- 6.4k
- Forks
- 1.2k
- Merge medio
- 1 d 23 h
- PR fusionados (30 d)
- 115
Descripción
### Search before asking
- [X] I searched in the [issues](https://github.com/apache/iotdb/issues) and found nothing similar.
### Version
操作系统:CentOS 7.9
IoTDB:1.12
### Describe the bug and provide the minimal reproduce step

使用iotdb的分段分组聚合,指定聚合窗口大小和步长为1y,发现聚合结果步长是固定的365天,这并没有考虑到闰年为366天的事实。
我查询了基于月是可以实现每28|29|30|31天作为自然月来分组的

这应当是一个错误,请尽快解决一下
### What did you expect to see?
期望的查询结果应是
+-----------------------------+----+----+-------+------+
| Time| pv|load|selfuse|charge|
+-----------------------------+----+----+-------+------+
|2023-01-01T00:00:00.000+08:00| 39| 3| 0| 35|
|2024-01-01T00:00:00.000+08:00|null|null| null| null|
|2025-01-01T00:00:00.000+08:00|null|null| null| null|
|2026-01-01T00:00:00.000+08:00|null|null| null| null|
+-----------------------------+----+----+-------+------+
### What did you see instead?
实际的查询结果是
+-----------------------------+----+----+-------+------+
| Time| pv|load|selfuse|charge|
+-----------------------------+----+----+-------+------+
|2023-01-01T00:00:00.000+08:00| 39| 3| 0| 35|
|2024-01-01T00:00:00.000+08:00|null|null| null| null|
|2024-12-31T00:00:00.000+08:00|null|null| null| null|
|2025-12-31T00:00:00.000+08:00|null|null| null| null|
+-----------------------------+----+----+-------+------+
### Anything else?
_No response_
### Are you willing to submit a PR?
- [ ] I'm willing to submit a PR!
Guía de contribución
Línea de trabajo
Comienza con la reproducción mínima y los resultados de consulta esperados y reales descritos en este issue, centrándote en el comportamiento de la agrupación por ventanas de tiempo para un intervalo de 1y. La corrección estará terminada cuando los grupos anuales comiencen en límites sucesivos de años naturales, incluidos los años bisiestos, y la salida reproducida coincida con las marcas de tiempo esperadas.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java
- Área
- databases
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 35/100