[
https://issues.apache.org/jira/browse/HIVE-9357?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14276404#comment-14276404
]
Jason Dere commented on HIVE-9357:
----------------------------------
Not sure I agree with these last day of month semantics, at least when going
from a shorter month to a longer month. Take a look at the examples below for
both MySQL and Postgres. We might end up adding Interval type and I'd like the
behavior to be consistent between that and this udf.
{noformat}
mysql> select date_add(date '2011-01-31', interval 1 month);
+-----------------------------------------------+
| date_add(date '2011-01-31', interval 1 month) |
+-----------------------------------------------+
| 2011-02-28 |
+-----------------------------------------------+
1 row in set (0.00 sec)
mysql> select date_add(date '2011-02-28', interval 1 month);
+-----------------------------------------------+
| date_add(date '2011-02-28', interval 1 month) |
+-----------------------------------------------+
| 2011-03-28 |
+-----------------------------------------------+
1 row in set (0.00 sec)
postgres=# select date '2011-01-31' + interval '1 month';
?column?
---------------------
2011-02-28 00:00:00
(1 row)
postgres=# select date '2011-02-28' + interval '1 month' ;
?column?
---------------------
2011-03-28 00:00:00
(1 row)
{noformat}
> Create ADD_MONTHS UDF
> ---------------------
>
> Key: HIVE-9357
> URL: https://issues.apache.org/jira/browse/HIVE-9357
> Project: Hive
> Issue Type: Improvement
> Components: UDF
> Reporter: Alexander Pivovarov
> Assignee: Alexander Pivovarov
> Attachments: HIVE-9357.1.patch
>
>
> ADD_MONTHS adds a number of months to startdate:
> add_months('2015-01-14', 1) = '2015-02-14'
> add_months('2015-01-31', 1) = '2015-02-28'
> add_months('2015-02-28', 2) = '2015-04-30'
> add_months('2015-02-28', 12) = '2016-02-29'
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)