首頁 > 資料庫 > mysql教程 > 如何使用 MySQL 從出生日期計算年齡?

如何使用 MySQL 從出生日期計算年齡?

Mary-Kate Olsen
發布: 2025-01-16 11:53:58
原創
975 人瀏覽過

How to Calculate Age from a Date of Birth Using MySQL?

利用MySQL (InnoDB)計算年齡

本文介紹如何使用MySQL的TIMESTAMPDIFF函數根據資料庫中儲存的出生日期計算年齡。

問題:

假設出生日期以'dd-mm-yyyy'格式存儲,我們需要確定:

  • 日期相減後回傳日期的格式。
  • 如何使用傳回的格式計算一個人的年齡。

解:

日期格式:

MySQL將目前日期減去另一個日期後傳回的日期格式為預設的MySQL日期時間格式:YYYY-MM-DD HH:MM:SS。

計算年齡:

我們可以使用TIMESTAMPDIFF函數計算兩個日期在不同單位(包括年)上的差值。例如下:

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

此查詢計算1970年2月1日與目前日期之間的差值,並以年為單位傳回年齡。

範例:

考慮一個表,其中包含一個名為'date_of_birth'的列,格式為'dd-mm-yyyy':

<code class="language-sql">CREATE TABLE persons (
  id INT PRIMARY KEY,
  name VARCHAR(255),
  date_of_birth DATE
);

INSERT INTO persons (name, date_of_birth) VALUES
  ('John Doe', '1970-02-01'),
  ('Jane Doe', '1975-04-15');</code>
登入後複製

要計算'John Doe'的年齡,我們將執行以下查詢:

<code class="language-sql">SELECT TIMESTAMPDIFF(YEAR, date_of_birth, CURDATE()) AS age
FROM persons
WHERE name = 'John Doe';</code>
登入後複製

此查詢將傳回結果:

<code>age
51</code>
登入後複製

以上是如何使用 MySQL 從出生日期計算年齡?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板