Hive—内置date函数用法详解
关注微信公众号:CodingTechWork,一起学习进步。
引言
在hive中我们经常需要处理日期数据,hive内置了3个日期函数,其格式只能为yyyy-MM-dd
格式或者yyyy-MM-dd HH:mm:ss'
格式
常用date函数
日期比较函数:datediff
语法
datediff(string enddate,string startdate)
说明:返回结束日期enddate
减去开始日期startdate
的天数
返回值类型:int
示例
- 返回天数为正
hive> select datediff('2022-01-02','2022-01-01');
1
2.返回天数为负数
hive>select datediff('2022-01-01','2022-01-03');
-2
- 返回最近一周的数据
hive>select * from table_01 where datediff(current_timestamp,create_time)<=7;
其中:create_time
为table_01
中的时间字段;current_timestamp
为放回当前时间;
日期增加函数:date_add
语法
date_add(string startdate,int days)
说明:返回开始日期startdat增加天数days后的日期,days
可以正负数,若days>0
,则表示增加days的日期。若days<0
,则表示减少days的日期。
返回值类型:string
示例
- 返回2天日期
hive>select date_add('2022-01-01',2);
2022-01-03
- 返回一周后那一天的预测数据
hive>select * from table_01 where create_time = date_add(current_timestamp,7);
其中:create_time
为table_01
中的时间字段;current_timestamp
为放回当前时间;
日期减少函数:date_sub
语法
date_sub(string startdate,int days)
说明:返回开始日期startdat减去天数days后的日期,days
可以正负数,若days>0
,则表示减少days的日期。若days<0
,则表示增加days的日期。
返回值类型:string
- 返回9天前的日期
hive>select date_sub('2022-01-10',9);
2022-01-01
- 返回一周前当天的数据
hive>select * from table_01 where create_time=date_sub(current_timestamp,7);
其中:create_time
为table_01
中的时间字段;current_timestamp
为放回当前时间;
烧不死的鸟就是凤凰
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET10 - 预览版1新功能体验(一)
2021-05-15 JVM—类加载器和双亲委派模型
2018-05-15 maven的安装与配置
2018-05-15 Maven安装配置操作