Hive求两个日期相差天数向上取整

Hive求两个日期相差天数向上取整

最好的方法是利用时间戳相减,除以 86400 得到天数,
然后再round保留小数位,或者直接用ceil取整数。
在Hive中,ceil不支持选择保留位数,因此,如果不确定后面会取小数天还是取整数天,则用round得到一个double类型的小数。

时间戳获得函数:

unix_timestamp('2021-01-25 00:00:00')

相减得到秒数

select unix_timestamp('2021-01-25 02:03:04') - unix_timestamp('2021-01-25 00:00:00')

除以86400并取round

select round(unix_timestamp('2021-01-25 02:03:04') - unix_timestamp('2021-01-25 00:00:00')/86400,2)

版权声明:本文为m0_37263074原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。