[英]How to convert seconds into “DD:HH:MM” format
我嘗試使用SEC_TO_TIME(seconds)
並工作並給出如下結果
SEC_TO_TIME(161295.38237498334)
結果:
44:48:15.382375
我需要得到(DD:HH:MM)的結果
如果您正在使用@Mark Leiber提到的UNIX時間戳,請查看FROM_UNIXTIME()
和DATE_FORMAT()
。
如果您不使用時間戳,而是想格式化任意時間值,則可以查看TIME_FORMAT()
函數:
SELECT TIME_FORMAT(SEC_TO_TIME(161295.38237498334), '%H:%i:%s')
不幸的是TIME_FORMAT
只能代表小時和分鍾部分。 要獲得可以使用的天數:
FLOOR(HOUR(SEC_TO_TIME(161295.38237498334)) / 24)
然后格式化剩余的小時和分鍾:
TIME_FORMAT(SEC_TO_TIME(161295.38237498334 % (24 * 60 * 60)), '%H:%i'))
然后,您可以使用CONCAT()
將其放在一起。 有關完整的工作示例,請參見此小提琴 。
您可以在此處參考MySQL時間和日期函數的整個列表: https : //dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html
另請參閱@RichardTheKiwi對這個相關問題的答案 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.