Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

จะรับอายุจาก DOB ใน MySQL ได้อย่างไร


ในการรับอายุจาก DOB คุณสามารถใช้ฟังก์ชัน TIMESTAMPDIFF() ต่อไปนี้เป็นไวยากรณ์ -

เลือก TIMESTAMPDIFF(YEAR, yourColumnName, CURRENT_DATE) AS anyAliasName จาก yourTableName;

ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable -> ( -> Id int ไม่ใช่ NULL AUTO_INCREMENT PRIMARY KEY, -> DateOfBirth datetime -> ); แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.73 วินาที)

แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -

mysql> แทรกลงในค่า DemoTable(DateOfBirth) ('1998-06-04 12:30:00'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.18 วินาที)mysql> แทรกลงในค่า DemoTable (DateOfBirth) ('2000- 01-31 04:10:20 ');แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.14 วินาที) mysql> แทรกลงในค่า DemoTable (DateOfBirth) ('2010-12-01 03:50:45'); แบบสอบถามตกลง 1 แถว ได้รับผลกระทบ (0.24 วินาที)

แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -

mysql> เลือก *จาก DemoTable;

ผลลัพธ์

<ก่อนหน้า>+----+---------------------+| รหัส | วันเกิด |+----+---------------------+| 1 | 1998-06-04 12:30:00 || 2 | 2000-01-31 04:10:20 || 3 | 2010-12-01 03:50:45 |+----+---------------------+3 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อรับอายุจาก DOB ใน MySQL -

mysql> เลือก TIMESTAMPDIFF(YEAR, DateOfBirth, CURRENT_DATE) AS YourAge จาก DemoTable

ผลลัพธ์

<ก่อนหน้า>+---------+| YourAge |+---------+| 21 || 19 || 8 |+---------+3 แถวในชุด (0.00 วินาที)