我希望在Hiveql中以日期格式查找两个日期之间的差异。我在SAS中使用打击功能通过减去数字
来返回日期值intnx('day', 20MAR2019 , -7)
从日期中减去7天,然后返回13MAR2019
我希望将其转换为Hiveql语言。任何提示将不胜感激!
答案 0 :(得分:3)
您可以在配置单元中使用date_sub函数从给定日期减去天数。
hive> select current_date;
2019-07-25
hive> select date_sub(current_date,7);
2019-07-18
这将返回null。
hive> select date_sub('13MAR2019',7);
OK
NULL
由于您的日期格式为“ ddMMMYYY”,因此可以将其转换为yyy-MM-dd格式。
hive> select date_sub(from_unixtime(unix_timestamp('13MAR2019' ,'ddMMMyyyy'), 'yyyy-MM-dd'),7);
OK
2019-03-06