SQL查询的时间戳计算

时间:2018-09-13 02:13:34

标签: mysql sql database datetime

我正在尝试以数据时间格式(00:00:00)显示每个客户的总旅行时间

但是我对我是否应该做

感到困惑

SEC_TO_TIME(SUM(结束时间-开始时间))

SEC_TO_TIME(SUM( TIME_TO_SEC (结束时间-开始时间)))

SEC_TO_TIME(SUM( TIME_TO_SEC (结束时间)- TIME_TO_SEC (开始时间))

如果结束时间和标准时间采用日期时间格式

应该是正确的方法。我对第一和第二个结果有所不同

1 个答案:

答案 0 :(得分:1)

第一:

使用endtimestarttimeUNIX_TIMESTAMP转换为时间戳记

第二:

减去它们

  

注意:结果将以秒为单位

(UNIX_TIMESTAMP(endtime) - UNIX_TIMESTAMP(starttime))

确定客户消耗了多少时间

第三名:

将结果转换为时间

SEC_TO_TIME( (UNIX_TIMESTAMP(endtime) - UNIX_TIMESTAMP(starttime)) )

所以您的最终查询应该是这样

SELECT SEC_TO_TIME( (UNIX_TIMESTAMP(endtime) - UNIX_TIMESTAMP(starttime)) ) FROM travel