【发布时间】:2019-05-10 06:59:15
【问题描述】:
如何计算时间格式的秒差:yyyyMMdd HH:mm:ss?
比如计算20190102 00:01:05和20190102 02:14:18的秒差
【问题讨论】:
标签: time hive timestamp hiveql datetime-format
如何计算时间格式的秒差:yyyyMMdd HH:mm:ss?
比如计算20190102 00:01:05和20190102 02:14:18的秒差
【问题讨论】:
标签: time hive timestamp hiveql datetime-format
使用UNIX_TIMESTAMP函数将时间戳转换为秒,然后减去:
select UNIX_TIMESTAMP('20190102 02:14:18','yyyyMMdd HH:mm:ss') -
UNIX_TIMESTAMP('20190102 00:01:05','yyyyMMdd HH:mm:ss');
返回:
7993 秒。
'HH:mm:ss' 格式的区别:
select from_unixtime(UNIX_TIMESTAMP('20190102 02:14:18','yyyyMMdd HH:mm:ss') -
UNIX_TIMESTAMP('20190102 00:01:05','yyyyMMdd HH:mm:ss'), 'HH:mm:ss');
返回:
02:13:13
您还可以使用解决方案如何使用此答案中提出的显式数学来格式化 'HH:mm:ss' 中的秒数:https://stackoverflow.com/a/57497316/2700344
【讨论】: