hive日期格式转换

固定日期转换成时间戳

select unix_timestamp('2022-05-09','yyyy-MM-dd') ;
select unix_timestamp('20220509','yyyyMMdd') ;
select unix_timestamp('2022-05-09T10:02:41Z', "yyyy-MM-dd'T'HH:mm:ss'Z'");

16/Mar/2022:12:25:01 +0800 转成正常格式(yyyy-MM-dd hh:mm:ss)

select from_unixtime(to_unix_timestamp('16/Mar/2022:12:25:01 +0800', 'dd/MMM/yyy:HH:mm:ss Z'))

时间戳转换程固定日期

select from_unixtime(1652029810,'yyyy-MM-dd') 
select from_unixtime(1652029810,'yyyyMMdd') 
select from_unixtime(1652029810) 
select from_unixtime( unix_timestamp('20220509','yyyyMMdd'),'yyyy-MM-dd')  
select date_format('2022-05-09','yyyyMMdd')

返回日期时间字段中的日期部分
select to_date('2022-05-09 10:03:01') --2022-05-09
取当前时间
select from_unixtime(unix_timestamp(),'yyyy-MM-dd HH:mm:ss')
select from_unixtime(unix_timestamp(),'yyyy-MM-dd') 
返回日期中的年
select year('2022-05-09 10:03:01') --2022
返回日期中的月
select month('2022-05-09 10:03:01') --5
返回日期中的日
select day('2022-05-09 10:03:01') --9
返回日期中的时
select hour('2022-05-09 10:03:01') --10
返回日期中的分
select minute('2022-05-09 10:03:01') --3
返回日期中的秒
select second('2022-05-09 10:03:01') --1

返回日期在当前的周数
select weekofyear('2022-05-09 10:03:01') --19

返回结束日期减去开始日期的天数
select datediff('2022-05-09','2022-05-08')  --1

返回开始日期startdate增加days天后的日期
select date_add('2022-05-09',10) --2022-05-19

返回开始日期startdate减少days天后的日期
select date_sub('2022-05-09',1) --2022-05-08

返回当天三种方式
SELECT CURRENT_DATE;
--2022-05-09
SELECT CURRENT_TIMESTAMP;--返回时分秒
--2022-05-09 19:54:44
SELECT from_unixtime(unix_timestamp());
----2022-05-09 19:55:04
返回当前时间戳
Select current_timestamp --2022-05-09 10:37:53.278

返回当月的第一天
select trunc('2022-05-09','MM') --2022-05-01
返回当年的第一天
select trunc('2022-05-09','YEAR') --2022-01-01

你可能感兴趣的:(sql,Hadoop,hive,sql,hadoop)