我正在使用以下Select语句来获取用户生日和其他信息。我想看看我是否可以在返回的数据中将日期转换为年龄 - 而不是在PHP中转换它。
数据库中的日期格式为:1979-04-26
SELECT profile_username,profile_gender,profile_birthdate FROM loginTable WHERE id=1000;
当前的回报就像是
Adam,Male,1979-04-26
我能回来吗?
Adam,Male,34
答案 0 :(得分:2)
SELECT profile_username,profile_gender,
DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(profile_birthdate, '%Y') -
(DATE_FORMAT(NOW(), '00-%m-%d') < DATE_FORMAT(profile_birthdate, '00-%m-%d'))
AS age
FROM loginTable WHERE id=1000;
<强> SAMPLE FIDDLE 强>