我需要计算即将到来的生日,并且必须向他们发送生日祝福。我无法从具有出生日期字段的数据库中检索记录。
任何人都可以根据SQL Server 2005中的DateOfBirth字段向我提供查询,使用该查询我可以在接下来的7天内获得有生日的记录
提前致谢
答案 0 :(得分:1)
SELECT ...
FROM...
WHERE DATEDIFF(dd,
CAST(CAST(YEAR(GETDATE()) AS VARCHAR) + '-' + CAST(MONTH(DateOfBirth) AS VARCHAR) + '-' + CAST(DAY(DateOfBirth) AS VARCHAR) AS DATETIME),
GETDATE()) <= 7
答案 1 :(得分:1)
SELECT *
FROM
TABLE
WHERE
DATEPART(dy, DateOfBirth) - DATEPART(dy, GETDATE()) > 0 AND
DATEPART(dy, DateOfBirth) - DATEPART(dy, GETDATE()) <=7