ホームページ >データベース >mysql チュートリアル >MySQL で日付の違いを計算するにはどうすればよいですか?

MySQL で日付の違いを計算するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2025-01-10 21:17:46201ブラウズ

How to Calculate Date Differences in MySQL?

MySQLの日付差分計算方法

MySQL データベースで日付を操作する場合、多くの場合、2 つの日付の差を計算する必要があります。これは、時間間隔や年齢を計算するなどのタスクに役立ちます。この記事では、MySQL で 2 つの日付の差を計算する方法について説明します。

TIMESTAMPDIFF 関数を使用する

TIMESTAMPDIFF 関数は、指定された時間単位内の 2 つのタイムスタンプの差を計算できます。その構文は次のとおりです:

<code class="language-sql">SELECT TIMESTAMPDIFF(unit, timestamp_expression1, timestamp_expression2);</code>

その中には:

  • unit は、差分が返される時間の単位 (YEAR、MONTH、DAY、HOUR、MINUTE、SECOND など) です。
  • timestamp_expression1timestamp_expression2 は、差分を計算する 2 つのタイムスタンプです。

たとえば、2 つのタイムスタンプの差を秒単位で計算するには、次のようにします:

<code class="language-sql">SELECT TIMESTAMPDIFF(SECOND, '2023-01-01 12:00:00', '2023-02-01 14:00:00');</code>

結果は 2,592,000 秒となり、2 つのタイムスタンプの差を表します。

TIMEDIFF 関数を使用する

TIMEDIFF 関数は、2 つのタイムスタンプの差を計算する別の方法を提供します。 TIMESTAMPDIFF とは異なり、HH:MM:SS 形式で時、分、秒の差のみを返します。その構文は次のとおりです:

<code class="language-sql">SELECT TIMEDIFF(timestamp_expression1, timestamp_expression2);</code>

例:

<code class="language-sql">SELECT TIMEDIFF('2023-01-01 12:00:00', '2023-02-01 14:00:00');</code>

結果は「-02:00:00」となり、2 つのタイムスタンプ間の時間、分、秒の差を表します。 タイムスタンプの順序によっては、結果が負になる場合があることに注意してください。

以上がMySQL で日付の違いを計算するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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