spark和hive在一些函数上的不同

31 篇文章 4 订阅

com

spark和hive在一些函数,尤其是时间处理函数上有不同,
hive:2.0.1
spark:3.0.3

date_sub

date_sub函数,在hive 2.1.0之前的版本,返回的是String,但是在spark3.0.3,返回的是date对象,所以用date_sub的结果转时间戳的时候,就会有问题。因为date对象肯定是带时分秒毫秒的。
统一的方式就是把date_sub的结果用cast转成string,然后再用unix_timestamp转时间戳。

unix_timestamp

unix_timestamp(参数,格式)
当参数跟格式不匹配时,比如参数为2022-07-24 01:00:07.0,格式为yyyy-mm-dd。spark会报错,hive则会正常返回。
只有参数跟格式刚好匹配,spark的才行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值