我正在尝试编写一个SQL语句,从设定的日期开始每四个星期六选择一次。因此,如果选择的日期是07/09/2014,则查询将返回05/10/2014和02/11/2014,依此类推。
我可以从日期开始选择每个星期六,但我不知道如何让它每次都能完成第四次。
SELECT DATE
, DATENAME(DW,DATE) as Date
FROM tblCalender
WHERE DATENAME(DW,DATE) = 'Saturday'
AND Date > '13-September-2014'
这是让星期六前进的选择。
答案 0 :(得分:0)
感谢t_m建议
DECLARE @Date DATETIME
SET @Date = '19-July-2014'
SELECT Date AS SatDate
, DayOfWeek
FROM (
SELECT DATE
, DATENAME(DW,DATE) as DayOfWeek
, ROW_NUMBER() OVER (ORDER BY Date) AS rownum
FROM tblCalender
WHERE DATENAME(DW,DATE) = 'Saturday'
AND Date > @Date
) AS t
WHERE t.rownum % 4 = 0
感谢您的提示!