Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mengira Umur dari Tarikh Lahir Menggunakan MySQL?
Gunakan MySQL (InnoDB) untuk mengira umur
Artikel ini menerangkan cara menggunakan fungsi TIMESTAMPDIFF
MySQL untuk mengira umur berdasarkan tarikh lahir yang disimpan dalam pangkalan data.
Soalan:
Dengan mengandaikan tarikh lahir disimpan dalam format 'dd-mm-yyyy', kita perlu menentukan:
Penyelesaian:
Format tarikh:
Format tarikh yang dikembalikan oleh MySQL selepas menolak tarikh lain daripada tarikh semasa ialah format tarikh dan masa MySQL lalai: YYYY-MM-DD HH:MM:SS.
Kira umur:
Kita boleh menggunakan fungsi TIMESTAMPDIFF
untuk mengira perbezaan antara dua tarikh dalam unit yang berbeza (termasuk tahun). Contohnya adalah seperti berikut:
<code class="language-sql">SELECT TIMESTAMPDIFF(YEAR, '1970-02-01', CURDATE()) AS age;</code>
Pertanyaan ini mengira perbezaan antara 1 Februari 1970 dan tarikh semasa dan mengembalikan umur dalam tahun.
Contoh:
Pertimbangkan jadual yang mengandungi lajur yang dipanggil 'tarikh_kelahiran' dalam format '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>
Untuk mengira umur 'John Doe' kami akan menjalankan pertanyaan berikut:
<code class="language-sql">SELECT TIMESTAMPDIFF(YEAR, date_of_birth, CURDATE()) AS age FROM persons WHERE name = 'John Doe';</code>
Pertanyaan ini akan mengembalikan hasil:
<code>age 51</code>
Atas ialah kandungan terperinci Bagaimana untuk Mengira Umur dari Tarikh Lahir Menggunakan MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!