我想将列中的所有值从“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
关于mysql - 如何将时间从hh :mm:ss. mmm转换为秒和毫秒mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52742190/