嗨,我是我的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')
最佳答案
使用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'
)