我正试图在个人资料页面显示我的成员年龄。 我找到了2个SQL查询:
SELECT TIMESTAMPDIFF(YEAR, dob, CURDATE()) AS age FROM users
和
SELECT FLOOR(DATEDIFF(CURRENT_DATE(), dob) / 365)
什么SQL查询更好? (性能,准确等)。
答案 0 :(得分:0)
我不确定这将如何转化为mysql。但是这里有一个T-SQL,可以根据出生日期和当前日期计算一个人的年龄。
select case
when cast(getdate() as date) = cast(dateadd(year, (datediff(year, '1996-09-09', getdate())), '1996-09-09') as date)
then dateDiff(yyyy,'1996-09-09',dateadd(year, 0, getdate()))
else dateDiff(yyyy,'1996-09-09',dateadd(year, -1, getdate()))
end as MemberAge
go