SQL查询一周内过生日的用户

SELECT birthday, 
CAST(CAST(datepart(yy, getdate()) AS varchar(20)) 
+ '-' + 
CAST(datepart(mm, birthday) AS varchar(20)) 
+ '-' + 
CAST(datepart(day, birthday) AS varchar(20)) AS datetime) AS Nbirthday 
FROM CRM_Customer
WHERE birthday is not NULL
AND 
(
//当前时间要大于等于生日
Datediff(day, CAST(CAST(datepart(yy, getdate()) AS varchar(20)) + '-' + CAST(datepart(mm, birthday) AS varchar(20)) + '-' + CAST(datepart(day, birthday) AS varchar(20)) AS datetime),getdate())>=0 AND
//当前时间要减去生日,要小于7天 Datediff(day, CAST(CAST(datepart(yy, getdate()) AS varchar(20)) + '-' + CAST(datepart(mm, birthday) AS varchar(20)) + '-' + CAST(datepart(day, birthday) AS varchar(20)) AS datetime),getdate())<7 )

 

posted @ 2013-08-13 15:55  ``炯``  阅读(2172)  评论(0编辑  收藏  举报