我得到的表值如下表
Name City Date
a 1 Mar 22 2013
b 2 Apr 19 2013
c 3 Apr 20 2013
d 4 Apr 22 2013
e 5 Apr 27 2013
f 6 Apr 30 2013
g 7 Jun 5 2013
我得到了如上表所示的价值观。今天的日期是2013年4月25日。我需要按照 2013年4月18日到2013年6月2日的+7和-7这些值进行分组。请帮帮我。
答案 0 :(得分:3)
select * from yourTable
where DATEDIFF(day,'2013-04-25',[Date]) between -7 and 7
如果您在查询运行时需要当前日期,请使用GETDATE()
函数代替'2013-04-25'
答案 1 :(得分:3)
根据当前日期动态创建条件
SELECT *
FROM dbo.yourTable
WHERE Date >= DATEADD(DAY, DATEDIFF(DAY, 0, GETDATE())-7, 0)
AND Date < DATEADD(DAY, DATEDIFF(DAY, 0, GETDATE())+8, 0)