hive函数之日期函数最终回

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第14天,点击查看活动详情

本文的hive函数介绍还是继续日期函数系列,日期函数真的是比较多的,谁让时间是大数据统计汇总中非常重要的一个维度呢,所以就算多也还是都要掌握呀。

10、months_between 月份比较函数 作用:获得两个月份的差值

常见使用方法:months_between(String end_week,String start_week)

具体功能描述:这个函数就是通过输入两个日期,得到相差的月数,返回的类型是double ,这里的格式要求必须是yyyy-MM-dd,如果是时间戳的通过之前的转换函数可以转成这个格式的哦。

select months_between( '2020-05-21' ,  '2020-03-22' ); 
>>  1.96774194
select months_between( '2022-05-21' ,  '2022-03-21' ); 
>>  2
复制代码

11、add_months 增加月份 作用:当前月份增加月数

常见使用方法:add_months(String end_week,int m)

具体功能描述:该函数是通过输入一个日期和int参数,对日期加上指定月数,获得新的日期,也是string格式。,如果m是负数,就是减去指定月数。

select add_months( '2020-05-21' , 1 ) -- 增加月份 
>>  2020 - 06 - 01     
select add_months( '2020-05-21' ,- 1 ) -- 减少月份 
>>  2020 - 04 - 21
​
复制代码

12、trunc、last_day 获取 月初、月末函数

常见使用方法:trunc(String date,String m) ,last_day(String date)

具体功能描述:该函数可以输入一个日期,然后获得这个日期的月份的月初日期;或者是这个日期的月末日期,结合上一个增加月份的函数,就可以获得任意月份的月初和月末啦。

select trunc( '2020-05-21' , 'MM' ) -- 月初 
>>  2020 - 05 - 01     
select last_day( '2020-05-21' ) -- 月末 
>>  2020 - 05 - 31     
select trunc(add_months( '2020-05-21' ,- 1 ), 'MM' ) -- 上个月月初 
>>  2020 - 04 - 01
​
复制代码

13、date_format 时间格式化 作用:输出指定格式的时间

常见使用方法:date_format(String date,String yyyy-mm)

具体功能描述:对输入的日期转换为指定格式输出,输出string类型的数据。

date_format(create_time, 'yyyy-MM' ) 
>>  2022 - 03
date_format(create_time, 'yyyy-MM-dd' ) 
>>  2022 - 03 - 22
​
复制代码

猜你喜欢

转载自juejin.im/post/7087962934550364174