Mysql 如何将时间从hh:mm:ss.mmm转换为秒和毫秒
我想将列中的所有值从“hh:mm:ss.mmm”转换为“ss.mmm”。 我尝试了Mysql 如何将时间从hh:mm:ss.mmm转换为秒和毫秒,mysql,time,milliseconds,seconds,datetime-conversion,Mysql,Time,Milliseconds,Seconds,Datetime Conversion,我想将列中的所有值从“hh:mm:ss.mmm”转换为“ss.mmm”。 我尝试了TIME\u格式(Duration,'s%.f%)但它显示秒数和毫秒数,当值超过1分钟时,不会保持计算正确秒数的状态 或者,我可以使用开始列和结束列之间的差异,只要它以“ss.mmm”返回时间。我已经尝试过将TIMESTAMPDIFF(微秒,开始,结束)用作diff,但它是毫秒,我不知道如何将它转换为“ss.mmm”。当指定秒而不是微秒时,它会丢失毫秒数 谢谢:)这应该满足您的要求,如果我理解正确,您已经有了包含毫
TIME\u格式(
Duration,'s%.f%)
但它显示秒数和毫秒数,当值超过1分钟时,不会保持计算正确秒数的状态
或者,我可以使用开始列和结束列之间的差异,只要它以“ss.mmm”返回时间。我已经尝试过将TIMESTAMPDIFF(微秒,
开始,
结束)用作diff
,但它是毫秒,我不知道如何将它转换为“ss.mmm”。当指定秒而不是微秒时,它会丢失毫秒数
谢谢:)这应该满足您的要求,如果我理解正确,您已经有了包含毫秒的数据 我认为MySQL没有固有的毫秒函数,但我们可以使用微秒来代替
SELECT CONCAT(TIME_TO_SEC('15:30:15.293'), '.', TIME_FORMAT('15:30:15.293', '%f'));
这将输出如下
55815.293000
你是说
12:35:15.293
变成了15.293
?你为什么要这么做?或者,您想只报告秒数和毫秒数吗?@TimBiegeleisen我想OP也想将小时和分钟转换为秒,并将所有内容显示为秒。微秒使用TIME\u to_SEC()
函数。太好了,非常感谢您,这正是我需要的!