declare @birthday datetime, @d datetime select @birthday = '12/31/1972', @d = '1/1/99' select datediff(yy, @birthday, @d) - (case when (datepart(m, @birthday) > datepart(m, @d)) or (datepart(m, @birthday) = datepart(m, @d) And datepart(d, @birthday) > datepart(d, @d)) then 1 else 0 end) as Age1
select year ( dateadd( dd, datediff ( dd , @birthday , @d ) , '1900-01-01 00:00' ) ) - 1900
if ( year ( @d ) % 400 = 0 ) Or ( year( @d ) % 4 = 0 And year ( @d ) % 100 <> 0 ) print 'Leap Year - 366 days' else print 'Not a leap year - 365.25 days' |