將MySQL TIMEDIFF 輸出轉換為日、時、分、秒格式
在MySQL 中查詢兩個DATETIME 值之間的時間差時, TIMEDIFF 函數通常傳回格式為小時:分鐘:秒的值。但是,如果您需要包含天和秒的更全面的表示形式,則可以使用自訂公式。
要將TIMEDIFF 輸出格式化為天、小時、分鐘和秒,您可以使用以下查詢:
<code class="sql">SELECT CONCAT( FLOOR(HOUR(TIMEDIFF(end_time, start_time)) / 24), ' days ', MOD(HOUR(TIMEDIFF(end_time, start_time)), 24), ' hours ', MINUTE(TIMEDIFF(end_time, start_time)), ' minutes', SECOND(TIMEDIFF(end_time, start_time)), ' seconds' )</code>
將end_time 和start_time 替換為代表您的特定時間範圍的相應列或值。
例如,如果您有以下值:
start_time = '2010-01-01 12:30' end_time = '2010-01-06 08:46'
執行查詢將產生以下輸出:
4 days 20 hours 12 minutes 10 seconds
值得注意的是,此解決方案可以有效處理35 天範圍內的日期差異。如果您預期日期差異會超過 35 天,建議考慮使用 TIMESTAMPDIFF 函數的替代解決方案。
以上是如何將 MySQL TIMEDIFF 輸出轉換為日、小時、分鐘和秒格式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!