Hive SQL常用的函数记录

日期函数

获取当前日期是第几周:from_unixtime(unix_timestamp('20210909','yyyyMMdd'), 'ww');
下面这种方式获取周,会少了一周:
weekofyear(from_unixtime(unix_timestamp(cast('20210809' as string),'yyyyMMdd'),'yyyy-MM-dd')) ;
日期范围当前月的第一天到最后一天:
and a.day >=date_format(DATE_SUB(FROM_UNIXTIME(UNIX_TIMESTAMP()),DAYOFMONTH(FROM_UNIXTIME(UNIX_TIMESTAMP()))),'yyyyMM01') 
and a.day <=date_format(DATE_SUB(FROM_UNIXTIME(UNIX_TIMESTAMP()),DAYOFMONTH(FROM_UNIXTIME(UNIX_TIMESTAMP()))),'yyyyMMdd')

查询当前系统时间(包括毫秒数): current_timestamp;  
查询当月第几天: dayofmonth(current_date);
月末: last_day(current_date)
当月第1天: date_sub(current_date,dayofmonth(current_date)-1)
下个月第1天: add_months(date_sub(current_date,dayofmonth(current_date)-1),1)

其他的比较全面的查阅:

https://blog.csdn.net/m0_46657040/article/details/108298944

猜你喜欢

转载自blog.csdn.net/Baron_ND/article/details/119532444