我需要区分两个时间戳字段,开始和结束

nle07wnf  于 2021-06-25  发布在  Hive
关注(0)|答案(2)|浏览(335)

我需要区分两个时间戳字段,start和end,例如:start\u date:2019-09-20 01:15:00 final\u date:2019-09-20 01:20:15 datediff(end\u date,start\u date)
我得到的回报是0。
我想这是因为那天是一样的,但是我想以分钟为单位,这里是5分钟。
有人遇到过这种困难吗?

dgjrabp2

dgjrabp21#

mysql datediff()返回两个日期或日期时间之间的天数。要获得两个时间戳之间的秒数,可以使用unix\u时间戳(date)来返回unix时间

SELECT (UNIX_TIMESTAMP('2019-09-20 01:20:00')-UNIX_TIMESTAMP('2019-09-20 01:15:00'))/60;

或者使用时间戳

SELECT TIMESTAMPDIFF(MINUTE,'2019-09-20 01:15:00','2019-09-20 01:20:00')
qni6mghb

qni6mghb2#

一种方法是转换为unix时间戳:

select (unix_timestamp(final_date) - unix_timestamp(start_date)) / 60 as diff_minutes

相关问题