-2

如何在 mysql 上从秒到时间传递?

out 的日期格式为 hh:mm:ss.ms

对不起。我需要例如 0.98 秒 -> 00:00:00.980; 使用 sec_to_tiem 返回 00:00:01。

谢谢。

我已经实现了这种方式:

select concat(if(floor(seconds/(60 * 60)) = 0,'00',lpad(floor(seconds/(60 * 60)),2,'0')), 
':',
if(floor(seconds/60) = 0,'00',lpad(floor(seconds / 60),2,'0')), 
':',
seconds % 60)

但它必须以其他更有效的方式存在

另一种方式:

CONCAT(lpad(floor(seconds / 3600), 2, '0'), ':', 
      lpad(floor(seconds / 60), 2, '0'), ':',
      lpad(floor(seconds  % 60), 2, '0'), '.', 
      lpad(SUBSTRING_INDEX((seconds * 1000) % 1000, '.', 1), 3, '0')) 
4

1 回答 1

1
SELECT MAKETIME (<yourseconds>/(60*24), <yourseconds>/60, <yourseconds>%60)

或格式

SELECT TIME_FORMAT( MAKETIME( <yourseconds>/ ( 60 *24 ) , <yourseconds>/60, <yourseconds>%60 ) ,  '%T.%f' )
于 2012-09-27T15:45:42.813 回答