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

DDD
リリース: 2024-10-24 04:13:02
オリジナル
123 人が閲覧しました

How to Convert MySQL TIMEDIFF Output to Day, Hour, Minute, and Second Format?

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

MySQL で 2 つの 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 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!