如何将时间从 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
我想将列中的所有值从 "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