Hive 需要计算TimeDiff,包括配置单元中的毫秒
我们需要使用色调计算蜂巢中的时间差和毫秒数 请找到下面的屏幕截图Hive 需要计算TimeDiff,包括配置单元中的毫秒,hive,Hive,我们需要使用色调计算蜂巢中的时间差和毫秒数 请找到下面的屏幕截图 select ((unix_timestamp('2017-12-26 14:35:19.609') - unix_timestamp('2017-12-26 14:35:18.779'))*1000) as timediff 输出: timediff 1000 在上面的例子中,我们只得到秒,但我们无法得到毫秒精度 请您提供使用配置单元解决此问题的解决方案。(不在配置单元中使用UDF)。根据此答案,在毫秒内,您不应使用u
select
((unix_timestamp('2017-12-26 14:35:19.609')
- unix_timestamp('2017-12-26 14:35:18.779'))*1000) as timediff
输出:
timediff
1000
在上面的例子中,我们只得到秒,但我们无法得到毫秒精度
请您提供使用配置单元解决此问题的解决方案。(不在配置单元中使用UDF)。根据此答案,在毫秒内,您不应使用
unix\u timestamp
函数,因为这些函数将日期视为自历元起的秒数
因此,您可以CAST
将其转换为TIMESTAMP
,然后DOUBLE
以获得所需的结果
SELECT ROUND((CAST(CAST('2017-12-26 14:35:19.609' AS TIMESTAMP) AS DOUBLE)
- CAST(CAST('2017-12-26 14:35:18.779' AS TIMESTAMP) AS DOUBLE)) * 1000)
as timediff
timediff
---------
830