ホームページ  >  記事  >  データベース  >  MySQL で時差出力を日、時、分、秒の形式に変換するにはどうすればよいですか?

MySQL で時差出力を日、時、分、秒の形式に変換するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-24 04:14:02558ブラウズ

How to Convert Time Difference Output to Day, Hour, Minute, and Second Format in MySQL?

MySQL で時差出力を日、時、分、秒の形式に変換する

MySQL で時差を扱う場合、結果を次のように表示すると便利なことがよくあります。日、時、分、秒など、より人間が読みやすい形式。時差が大きい場合、これは困難になる可能性があります。

次のようなクエリがあるとします。

SELECT TIMEDIFF(end_time,start_time) AS "total" FROM `metrics`;

は、116 を表す

116:12:10

のような値を返します。時12分10秒。これをより読みやすい形式に変換するには、次のクエリを使用します。

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')

end_time と start_time を実際の列名に置き換えます。

たとえば、end_time が '2010-01 であるとします。 -06 08:46'、start_time は '2010-01-01 12:30' です。上記のクエリは次を返します:

4 days 20 hours 12 minutes

このソリューションは 35 日以内の日付の違いに対してのみ機能することに注意してください。 start_time と end_time の間に 35 日以上あることがわかっている場合は、代わりに TIMESTAMPDIFF の使用を検討してください。

以上がMySQL で時差出力を日、時、分、秒の形式に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。