DOB在选择四舍五入到年



我有程序

create procedure sp_ChildrenOlderThan5Years
as
select clientid,firstName,MidInitial, LastName, address, city, 'AK' as 'State', zip,DATEDIFF(YEAR,dob,GETDATE()) as age
from Clients
where CategCode = 'CH' and StatusID in (1,2,6) and DATEDIFF(YEAR,dob,GETDATE())>6
go

必须显示6岁以上的客户。然而,我刚刚发现它是圆形的,例如,如果客户出生于2007年7月20日,它仍然显示这个客户在列表中,但他或她不是6岁。我知道DATEDIFF(YEAR,dob,GETDATE())的问题,但不知道如何修复。
我只需要客户谁是年龄较大或等于5年零10个月在其中列出。

如果您要查找大于5岁零10个月(或等于)的数据,请使用:

 datediff(month,dob,getdate()) >= 70

最新更新