您的位置:首页 > 数据库

数据库里怎样根据出生日期计算精确年龄

2009-10-15 02:43 597 查看
  网上有很多人都在问怎样根据出生日期计算出年龄,回答的人很多,但大部份都是用年减年的方式去算年龄,这样误差就太大了,我们现在计算精确年龄的思路是:年减年后,再对比月日,月日未达的,再减一年就OK了。

SQL Server计算精确年龄:
select datediff(year,Birtyday,getdate()) - case when datediff(day,dateadd(year,datediff(year,Birtyday,getdate()),Birtyday),getdate()) >= 0 then 0 else 1 end

MySQL计算精确年龄:
select year(now())-year(birthday) - (DATE_FORMAT(NOW(), '%m%d') < DATE_FORMAT(birthday, '%m%d'))
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息