我想查看一组日期值,如果它在任何月份的第1个或第3个或第5个星期一之间。如何在SQL Server 2008中执行此操作?
答案 0 :(得分:3)
好的,这可以通过几个条件很容易地表达出来:
WHERE
DATEPART(weekday,DateToCheck) = DATEPART(weekday,'20120910') AND
(
DATEPART(day,DateToCheck) between 1 and 7 OR
DATEPART(day,DateToCheck) between 15 and 21 OR
DATEPART(day,DateToCheck) between 29 and 31
)
(我按上面的DATEPART(weekday,...
检查,这样我就不必知道服务器上的日期设置是什么 - 我只是根据周一的“已知商品”检查价值
答案 1 :(得分:2)
试试这个:
SELECT *
FROM <your_table>
WHERE datename(weekday,<date_col>)='Monday'
AND DATEPART(day,<date_col>)/7 in (0,2,4)