Hive—日期格式使用总结

hive工作中处理日期的几个函数及其使用方法

1、获取系统当天日期有三种格式,代码如下:

-- 方法一
select from_unixtime(unix_timestamp(),'yyyy-MM-dd HH:mm:ss')
--方法二
select to_utc_timestamp(current_timestamp,'CST')
--方法三
select from_utc_timestamp(current_timestamp,'GMT+8')

注意:方法 一 的执行时间与本地时间有误差,正好相差8小时,如:
时间戳:2021-03-05 09:14:49
本地时:2021-03-05 17:14:48

方法二的执行时间与本地时间依然有误差,相差2小时,如:
时间戳:2021-03-05 15:14:50
本地时:2021-03-05 17:14:50

使用方法三正好是当前系统的准确时间!三种格式执行结果对比如下图所示:

2、获取系统历史日期,代码如下:

select date_sub(from_unixtime(unix_timestamp()),1)
or
select date_sub(to_date(from_unixtime(unix_timestamp())),1)

代码释义:这里的数字 1 是推演参数,需要获取昨天日期就用参数 1 查询,需要获取前天的日期时用参数 2 查询,一次类推,你想要获取几天前的日期,就填入参数几。结果实例如下图:

 

3、获取系统明天日期,代码如下:

select date_add(from_unixtime(unix_timestamp()),1)

同理, 这里的数字 1 是推演参数,需要获取明天日期就用参数 1 查询,需要获取后天的日期时用参数 2 查询,一次类推,你想要获取几天后的日期,就填入参数几。结果实例如下图(这里只附一张图):

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值