刚接触数仓时,对hive中sql内置的一些时间函数的用法总是用的模糊两可,每次需要用到的是总是得查api,今天把这3个容易出错的日期内置函数简单总结下,算是一次学习笔记, 加深印象,后面需要用到的时候就不用再去翻看api了。 1.日期比较函数
语法:
返回值: int 说明: 返回结束日期减去开始日期的天数。 例如:
执行结果: 11 -- 2022年只剩11天了
执行结果: -11 需要注意的是datediff两个日期必须是'yyyy-MM-dd'的格式,否则执行结果会是NULL 例如:
执行结果:NULL 而在mysql中,
这种写法是支持的, 执行结果 -11。 2.日期增加函数
语法:
返回值: string 说明: 返回开始日期startdate增加days天后的日期。 例如:
执行结果: 2022-12-31 -- 还有11天2022年就过去了 需要注意的是intdays 可以是正数、也可以是负数,正数代表加,负数代表减。 不过我们可以不用负数,日期有增加函数,自然有对应的减少函数 3.日期减少函数
语法:
返回值: string 说明: 返回开始日期startdate减少days天后的日期。 例如:
执行结果: 2022-12-20 hive日期比较函数,虽然只是一个很小的知识点,但它在实际应用有很大的作用,掌握了往往有事半功倍的效果。 比如获取某张表昨日的分区 可以使用
或者
好了,今天的分享就到这,希望今天的分享对大家有所帮助。 |
|