Sergey Nuyanzin created CALCITE-4837:
----------------------------------------

             Summary: FLOOR and CEIL of DATE/TIMESTAMP return wrong results for 
DECADE, CENTURY and MILLENNIUM
                 Key: CALCITE-4837
                 URL: https://issues.apache.org/jira/browse/CALCITE-4837
             Project: Calcite
          Issue Type: Bug
          Components: avatica, core
            Reporter: Sergey Nuyanzin


The query to reproduce
{code:sql}
select floor(t to decade) as floor_decade,      
        ceil(t to decade) as ceil_decade,
        floor(t to century) as floor_century,
        ceil(t to century) as ceil_century,
        floor(t to millennium) as floor_millennium,
        ceil(t to millennium) as ceil_millennium
 from (values(date '2021-10-07'), (timestamp '2021-10-07 10:27:35')) t;
{code}
it produces output
{noformat}
+--------------+-------------+--------------+--------------+------------------+-----------------+
| FLOOR_DECADE | CEIL_DECADE | FLOOR_CENTURY | CEIL_CENTURY | FLOOR_MILLENNIUM 
| CEIL_MILLENNIUM |
+--------------+-------------+--------------+--------------+------------------+-----------------+
| 2021-08-01   | 2021-11-29  | 2019-04-14   | 2022-07-27   | 2002-11-09       | 
2035-09-17      |
+--------------+-------------+--------------+--------------+------------------+-----------------+

{noformat}

expected
{noformat}
+--------------+-------------+--------------+--------------+------------------+-----------------+
| FLOOR_DECADE | CEIL_DECADE | FLOOR_CENTURY | CEIL_CENTURY | FLOOR_MILLENNIUM 
| CEIL_MILLENNIUM |
+--------------+-------------+--------------+--------------+------------------+-----------------+
| 2020-01-01   | 2030-01-01  | 2000-01-01   | 2100-01-01   | 2000-01-01       | 
3000-01-01      |
+--------------+-------------+--------------+--------------+------------------+-----------------+

{noformat}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to