SQL 跟据出生日期求年龄

主要针对sqlserver     采用函数DATEDIFF

之前采用的是  DATEDIFF(yy,出生日期,getdate())   这种取法只能取到大概的年龄,

如 出生日期为:1987-06-20

    当前日期为:2013-06-18

则获取的年龄为  26

 

现在需要精确的算出年龄

则可以采用类似如下方法

     FLOOR(DATEDIFF(DY, 出生日期, getdate())/365.25)

FLoor(parm)返回小于等于parm的最大整数

如 出生日期为:1987-06-20

    当前日期为:2013-06-18

则获取的年龄为  25

再如

如 出生日期为:1987-06-20

    当前日期为:2013-06-20

则获取的年龄为  26  

posted @ 2014-01-28 16:20  我是菜鸟20120819  阅读(950)  评论(0编辑  收藏  举报