MySQL/MariaDB คำนวณอายุ จากปีเกิดของสมาชิก บทความนี้สอนเขียนคำสั่ง SQL สำหรับคำนวณอายุจากปีเกิด โดยใช้สูตร ปีเกิด - ปีวันเกิด พร้อมแสดงผลลัพธ์ด้วยออกสู่หน้าจอ สามารถเขียนคำสั่ง SQL ได้ดังนี้
ตัวอย่าง ข้อมูลภายในตาราง member
+----+------+---------+
| id | name | bd_year |
+----+------+---------+
| 9 | A | 1988 |
| 10 | B | 1980 |
| 11 | C | 1990 |
+----+------+---------+
ตัวอย่าง MySQL/MariaDB คำนวณอายุ จากปีเกิดของสมาชิก
SELECT id, name, birthday, (YEAR(NOW()) - YEAR(birthday)) AS age FROM member;
ผลลัพธ์
+----+------+------------+------+
| id | name | birthday | age |
+----+------+------------+------+
| 9 | A | 1988-07-13 | 34 |
| 10 | B | 1980-05-23 | 42 |
| 11 | C | 1990-12-20 | 32 |
+----+------+------------+------+
3 rows in set (0.001 sec)
MySQL/MariaDB คำนวณอายุ ที่ column age คือผลลัพธ์จากการคำนวณหาอายุของสมาชิกในตาราง member เกิดจากคำสั่ง SQL คือ (YEAR(NOW()) - YEAR(birthday)) โดยมีรายละเอียดดังนี้
1. YEAR(NOW() หมายความว่า ดึงวันที่ปัจจุบันด้วยคำสั่ง NOW() และดึงเฉพาะปี ออกมาด้วยคำสั่ง YEAR
2. YEAR(birthday) หมายความว่า ดึงข้อมูลจาก column birthday โดยเอาเฉพาะปี ด้วยคำสั่ง YEAR
3. YEAR(NOW()) - YEAR(birthday) นำ ปีปัจจุบัน ลบกับ ปีเกิดของสมาชิกในตาราง member จาก column birthday ได้ผลลัพธ์เป็น column age คือ คำนวณอายุ จากปีเกิด