大数据之Hive:Hive中日期时间函数

Posted 浊酒南街

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据之Hive:Hive中日期时间函数相关的知识,希望对你有一定的参考价值。

1.date_format函数(根据格式整理日期)

hive (gmall)> select date_format('2021-03-20','yyyy-MM');
2020-03

备注:与mysql中date_format函数的不同之处是:在hive中,可以指定为"yyyy-MM",在mysql中必须是"%Y-%m"

mysql (gmall)> select date_format('2021-03-20',"%Y-%m");
2020-03

2.date_add函数(加减日期),date_sub,date_diff

hive (gmall)>select date_add('2021-03-20',-1);
2020-03-19
hive (gmall)> select date_add('2021-03-20',1);
2021-03-21

备注:在mysql中需要指定interval参数,指定间隔的度量(day,还是month或其他比如year_month),数值之间用":",注意没有month_day;

mysql> select date_add('2017-03-20',interval '-1' day);
2020-03-19
mysql> select date_add('2017-03-20',interval '1:-1' year_month);
2018-04-20 

备注:date_diff没有区别

3.next_day函数

(1)取当前天的下一个周一

hive (gmall)> select next_day('2021-05-28','MO');
2021-05-31

备注:不管本周是周几,但是你的下个周一,一定是下周一,其他的不一定。
2021-03-21说明:星期一到星期日的英文(Monday,Tuesday、Wednesday、Thursday、Friday、Saturday、Sunday)
(2)取当前周的周一

hive (gmall)> select date_add(next_day('2021-05-28','MO'),-7);
2021-05-24

4.last_day函数(求当月最后一天日期)

hive (gmall)> select last_day('2021-05-28');
2020-03-31

以上是关于大数据之Hive:Hive中日期时间函数的主要内容,如果未能解决你的问题,请参考以下文章

大数据之Hive:Hive日期处理函数之unix_timestamp

大数据之hive:hive时间函数总结

大数据之Hive:hive函数讲解:列转行

2021年大数据Hive:Hive的内置函数(数学字符串日期条件转换行转列)

大数据之Hive:Hive中next_day函数

大数据之Hive:Hive函数之collect_set()函数