如何将时间从 hh:mm:ss.mmm 转换为秒和毫秒 mysql

How to convert time from hh:mm:ss.mmm to seconds and milliseconds mysql

我想将列中的所有值从 "hh:mm:ss.mmm" 转换为 "ss.mmm"。 我试过 TIME_FORMAT(Duration, 's%.f%) 但这显示秒和毫秒,并且当值超过 1 分钟时不会继续计算正确的秒数。

或者我可以使用开始列和结束列之间的差异,只要它返回 "ss.mmm" 中的时间即可。我已经使用 TIMESTAMPDIFF(microsecond,Start,End)as diff 进行了尝试,但它以毫秒计,我不知道如何将其转换为 "ss.mmm"。当指定秒而不是微秒时,它会丢失毫秒。

谢谢:)

这应该可以满足您的要求,如果我理解正确的话,您已经拥有了包含毫秒的数据。

我认为MySQL没有固有的毫秒功能,但我们可以用微秒代替。

SELECT CONCAT(TIME_TO_SEC('15:30:15.293'), '.', TIME_FORMAT('15:30:15.293', '%f'));

这将输出如下;

55815.293000