计算两次的持续时间

时间:2019-02-10 21:42:03

标签: mysql sql

嗨,我是我的SQL新手,我正在尝试计算两次的时间差

例如: 时间开始= 21:00 时间= 03:00 结果将是06:00

我的查询就像这样进行计算,但是它给了我18:00的结果,我将非常感谢您的任何帮助或建议

 TIME_FORMAT(ABS(SEC_TO_TIME(ABS(TIME_TO_SEC(timestart)-TIME_TO_SEC(timeend)))), '%H:%i')

1 个答案:

答案 0 :(得分:0)

使用case

time_format(sec_to_time(case when timestart < timeend
                             then time_to_sec(timeend) - time_to_sec(timestart) 
                             else 24*60*60 + time_to_sec(timeend) - time_to_sec(timestart)
                        end), '%H:%i'
           )