gpt4 book ai didi

hadoop - HIVE-时差格式

转载 作者:行者123 更新时间:2023-12-02 19:03:19 26 4
gpt4 key购买 nike

我想计算事件之间的差异。这两个事件都以毫秒为单位存储在UNIX_TIMESTAMP中。

这是一个示例:1464740049000

如何转换时差并将其格式化为小时。

我尝试了几件事,如datediff和/或timestamp(event1)-timestamp(event2)。

我想要的是

select timestamp(e1.time), timestamp(e2.time), e1.time-e2.time as Time_Diff from testdata;



Time_Diff的格式应为小时,分钟,秒...
我怎么能得到这个?
提前致谢
彼得

最佳答案

如果差异少于24小时,则可以使用以下方法:

[localhost:21000] > select from_unixtime(1392394861 - 1392394860, 'HH:mm:ss');
+----------------------------------------------------+
| from_unixtime(1392394861 - 1392394860, 'hh:mm:ss') |
+----------------------------------------------------+
| 00:00:01 |
+----------------------------------------------------+

如果差异可能超过24小时,则以下丑陋的表达式可以解决问题:
[localhost:21000] > select concat(cast(floor((1392394861 - 1392300000)/60/60) as string), from_unixtime(1392394861 - 1392300000, ':mm:ss'));
+----------------------------------------------------------------------------------------------------------------------+
| concat(cast(floor((1392394861 - 1392300000) / 60 / 60) as string), from_unixtime(1392394861 - 1392300000, ':mm:ss')) |
+----------------------------------------------------------------------------------------------------------------------+
| 26:21:01 |
+----------------------------------------------------------------------------------------------------------------------+

或者,如果您希望使用带有明确日期的格式:
[localhost:21000] > select concat(cast(floor((1392394861 - 1392300000)/60/60/24) as string), " days and ", from_unixtime(1392394861 - 1392300000, 'HH:mm:ss'));
+-------------------------------------------------------------------------------------------------------------------------------------------+
| concat(cast(floor((1392394861 - 1392300000) / 60 / 60 / 24) as string), ' days and ', from_unixtime(1392394861 - 1392300000, 'hh:mm:ss')) |
+-------------------------------------------------------------------------------------------------------------------------------------------+
| 1 days and 02:21:01 |
+-------------------------------------------------------------------------------------------------------------------------------------------+

关于hadoop - HIVE-时差格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39264736/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com