[
https://issues.apache.org/jira/browse/CALCITE-1639?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
hongbin ma updated CALCITE-1639:
--------------------------------
Description:
in calcite,
select timestampadd(MONTH,1,cast('2016-05-31' as timestamp)) will return
2016-07-01 00:00:00, and select timestampadd(MONTH,-1,cast('2016-03-31' as
timestamp)) will return 2016-03-01 00:00:00
however in mysql, the last day of the next/previous month is always returned:
{noformat}
mysql> select timestampadd(MONTH,1,'2016-05-31') ;
+------------------------------------+
| timestampadd(MONTH,1,'2016-05-31') |
+------------------------------------+
| 2016-06-30 |
+------------------------------------+
1 row in set (0.00 sec)
mysql> select timestampadd(MONTH,-1,'2016-03-31') ;
+-------------------------------------+
| timestampadd(MONTH,-1,'2016-03-31') |
+-------------------------------------+
| 2016-02-29 |
+-------------------------------------+
1 row in set (0.00 sec)
mysql>
{noformat}
was:
in calcite,
select timestampadd(MONTH,1,cast('2016-05-31' as timestamp)) will return
2016-07-01 00:00:00, and select timestampadd(MONTH,-1,cast('2016-03-31' as
timestamp)) will return 2016-03-01 00:00:00
however in mysql, the last day of the next/previous month is always returned:
mysql> select timestampadd(MONTH,1,'2016-05-31') ;
+------------------------------------+
| timestampadd(MONTH,1,'2016-05-31') |
+------------------------------------+
| 2016-06-30 |
+------------------------------------+
1 row in set (0.00 sec)
mysql> select timestampadd(MONTH,-1,'2016-03-31') ;
+-------------------------------------+
| timestampadd(MONTH,-1,'2016-03-31') |
+-------------------------------------+
| 2016-02-29 |
+-------------------------------------+
1 row in set (0.00 sec)
mysql>
> issue for timestampadd month
> ----------------------------
>
> Key: CALCITE-1639
> URL: https://issues.apache.org/jira/browse/CALCITE-1639
> Project: Calcite
> Issue Type: Bug
> Reporter: hongbin ma
> Assignee: Julian Hyde
>
> in calcite,
> select timestampadd(MONTH,1,cast('2016-05-31' as timestamp)) will return
> 2016-07-01 00:00:00, and select timestampadd(MONTH,-1,cast('2016-03-31' as
> timestamp)) will return 2016-03-01 00:00:00
> however in mysql, the last day of the next/previous month is always returned:
> {noformat}
> mysql> select timestampadd(MONTH,1,'2016-05-31') ;
> +------------------------------------+
> | timestampadd(MONTH,1,'2016-05-31') |
> +------------------------------------+
> | 2016-06-30 |
> +------------------------------------+
> 1 row in set (0.00 sec)
> mysql> select timestampadd(MONTH,-1,'2016-03-31') ;
> +-------------------------------------+
> | timestampadd(MONTH,-1,'2016-03-31') |
> +-------------------------------------+
> | 2016-02-29 |
> +-------------------------------------+
> 1 row in set (0.00 sec)
> mysql>
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)