2011-08-29 71 views
0

我需要计算即将到来的生日,并且必须向他们发送生日祝福。我无法从出生日期字段的数据库中检索记录。如何根据出生日期获取记录

谁能给我使用,我可以基于SQL Server的出生日期场得到其在未来7天的生日记录提前2005年

由于查询

+0

需要一些更多的信息关于表结构。 – Kenneth

回答

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
SELECT * 
FROM 
    TABLE 
WHERE 
    DATEPART(dy, DateOfBirth) - DATEPART(dy, GETDATE()) > 0 AND 
    DATEPART(dy, DateOfBirth) - DATEPART(dy, GETDATE()) <=7