MySQL で年齢を計算する (InnoDB)
誰かの生年月日が「dd-mm-yyyy」という文字列として保存されている場合、DATE() または CURDATE() 関数を使用して現在の日付からそれを減算すると、「YYYY-MM-DD」形式の結果が返されます。
この結果から年齢を抽出するには、YEAR 単位で TIMESTAMPDIFF() 関数を使用できます。
<code class="language-sql">SELECT TIMESTAMPDIFF(YEAR, DATE('1970-02-01'), CURDATE()) AS age;</code>
この例では、「1970-02-01」はその人の生年月日を表します。結果として得られる年齢は、誕生日から経過した完全な年数になります。
デモ
<code class="language-sql">SELECT TIMESTAMPDIFF(YEAR, '1970-02-01', '2023-05-01') AS age;</code>
出力:
<code>age 53</code>
これは、TIMESTAMPDIFF() を使用して、保存された生年月日と現在の日付に基づいて年齢を計算する方法を示しています。
以上がMySQL に文字列として保存されている生年月日から年齢を計算するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。