1 . convert(int,datediff(d,dob,getdate())/365.25) as age
2. DECLARE @DOB DATETIME ='12/29/1980'SELECT @DOB 'Date of Birth', GETDATE() 'Current Date', DATEDIFF(YEAR,@DOB,GETDATE()) - (CASE WHEN DATEADD(YY,DATEDIFF(YEAR,@DOB,GETDATE()),@DOB) > GETDATE() THEN 1 ELSE 0 END) 'Age in Years'
Result:Date of Birth Current Date Age in Years
------------- ----------------------- ------------
1980-12-29 2012-04-26 10:23:05.690 31
(1 row(s) affected)
3. SELECT FLOOR(DATEDIFF(DAY, @BirthDate, @TargetDate) / 365.25)
No comments:
Post a Comment