ホームページ >データベース >mysql チュートリアル >MySQL の TIMESTAMPDIFF() を使用して生年月日から年齢を計算する方法は?

MySQL の TIMESTAMPDIFF() を使用して生年月日から年齢を計算する方法は?

Patricia Arquette
Patricia Arquetteオリジナル
2025-01-16 11:33:56868ブラウズ

How to Calculate Age from a Date of Birth Using MySQL's TIMESTAMPDIFF()?

MySQL (InnoDB) データベースの年齢の決定

個々の生年月日を「dd-mm-yyyy」形式で保存するデータベース テーブルがあるとします。 年齢を計算するには、現在の日付から生年月日を引く必要がありますが、これにより日付の差が生じ、すぐに使用できる年齢ではなくなります。

年齢を年単位で取得するには、TIMESTAMPDIFF() 関数を使用します。この関数は 2 つの日時式の差を計算し、選択した単位で結果を提供します。

関数構文:

<code class="language-sql">TIMESTAMPDIFF(unit, datetime_expr1, datetime_expr2)</code>

これを適用して年齢を計算する方法は次のとおりです:

<code class="language-sql">SELECT TIMESTAMPDIFF(YEAR, '1970-02-01', CURDATE()) AS age;</code>

このクエリは、現在の日付 (CURDATE()) から生年月日 ('1970-02-01') を減算し、その差を年単位で返します。

例:

生年月日が「1970-02-01」、現在の日付が「2023-02-01」の場合:

<code>TIMESTAMPDIFF(YEAR, '1970-02-01', '2023-02-01') = 53</code>

計算上の年齢は 53 歳です。

重要な考慮事項:

生年月日列が正しくフォーマットされた datetime または date タイプであることを確認してください。 TIMESTAMPDIFF() には互換性のあるデータ型が必要です。

以上がMySQL の TIMESTAMPDIFF() を使用して生年月日から年齢を計算する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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