我正在编写一个查询,该查询选择两次并计算两者之间的差,其中一次是开始,而另一次是完成以找出持续时间。但是,两者都设置为mysql中的TIME类型。我该如何格式化时间,而不是将HH:MM:SS显示为'[OPTIONAL H] H':MM hrs'

我是否使用提取功能?
我想我必须将TIMEDIFF包装在其他东西上吗?

我的SQL代码如下:

SELECT operator_no, log_in_time, TIMEDIFF(log_in_time,log_out_time) AS Duration


非常感谢

最佳答案

是的,将其包装在TIME_FORMAT()中:

SELECT operator_no, log_in_time,
       TIME_FORMAT(
           TIMEDIFF(log_in_time, log_out_time),
           '%H:%i hrs'
       ) AS Duration

10-06 15:00