网上搜索一个计算年龄的方法
--计算年龄的函数
--算法原则:超过生日,年龄就得加1
--
--SELECT dbo.FUN_GetAge('1988-7-29', getdate()) as age
----------------------------------------------------------------------
ALTER function [dbo].[FUN_GetAge]
(
@birthday datetime, --出生日期
@today datetime --截至日期
)
returns int
as
begin
if @birthday > @today
begin
return 0;
end
declare @age int
if datepart(month, @today) > datepart(month, @birthday)--月份超过
begin
select @age = @age + 1
end
else
begin
if datepart(month, @today) = datepart(month, @birthday)--月份一样
begin
if datepart(day, @today) >= datepart(day, @birthday)--日超过
begin
select @age = @age + 1
end
end
end
return @age ;
End