如果我的出生日期以表格的形式存储在表格中,dd-mm-yyyy并且从当前日期中减去该日期,那么返回的日期格式是什么?
dd-mm-yyyy
如何使用这种返回的格式来计算某人的年龄?
如果该值存储为DATETIME数据类型:
SELECT YEAR(CURRENT_TIMESTAMP) - YEAR(dob) - (RIGHT(CURRENT_TIMESTAMP, 5) < RIGHT(dob, 5)) as age FROM YOUR_TABLE
考虑leap年时不太精确:
SELECT DATEDIFF(CURRENT_DATE, STR_TO_DATE(t.birthday, '%d-%m-%Y'))/365 AS ageInYears FROM YOUR_TABLE t