hive sql的常用日期处理函数总结

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

作用:把一个字符串日期格式化为指定的格式。

select date_format(‘2017-01-01‘,‘yyyy-MM-dd HH:mm:ss‘);  --日期字符串必须满足yyyy-MM-dd格式    

结果:2017-01-01 00:00:00

2)date_add、date_sub函数(加减日期)

作用:把一个字符串日期格式加一天、减一天。

select date_add(‘2019-01-01‘,1);       --字符串必须满足yyyy-MM-dd格式    

结果:2019-01-02

select date_sub(‘2019-01-01‘,1);   --字符串必须满足yyyy-MM-dd格式 

结果:2018-12-31

3)next_day函数

作用:得到一个字符串日期的下周几的具体日期

select next_date(‘2020-01-01‘,‘Fri‘);     --得到2020-01-01往后的第一个周五

结果:2020-01-03

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

作用:求当月的最后一天日期

select last_day(‘2020-01-01‘);

结果:select last_day(‘2020-01-01‘);

5)from_unixtime(‘bigint时间戳’,‘pattern’)函数  5,6在一起用,常用来把非yyyy-MM-dd的日期字符串转为标准的yyyy-MM-dd的日期字符串

作用:把一个大数字时间戳,转换为指定格式的日期字符串

select from_unixtime(1517725479,‘yyyy-MM-dd HH:dd:ss‘);
select from_unixtime(1517725479,‘yyyyMMdd‘);

结果:2018-02-04 14:04:39

   20180204

6)unix_timestamp(‘日期字符串‘,‘pattern’)   5,6在一起用,常用来把非yyyy-MM-dd的日期字符串转为标准的yyyy-MM-dd的日期字符串

作用:把指定格式的日期转成时间戳

select unix_timestamp(‘2020/01/01‘,‘yyyy/MM/dd‘);

结果:1577808000

7)current_date()

作用:得到当前的日期字符串

select current_date();

结果:2020-01-01

8)current_timestamp()

作用:得到当前的时间字符串

select current_timestamp();

结果:2020-01-01 13:52:46.018

9) unix_timestamp()

作用:得到当前的时间戳

select unix_timestamp();

结果:1577858367

相关推荐