我想从每个星期六获取记录。我有一栏 create_date (时间戳) - 2016-06-22 07:20:22.220
以下查询适用于我一天。
select * from table
where create_date > '2016-06-04'
AND creat_date < '2016-06-05'
但是,如果我想多天获取记录,请说 - 2016-06-11 , 2016-06-18 , 2016-06-25
答案 0 :(得分:3)
您可以使用DATENAME()功能:
SELECT *
FROM yourTable
WHERE DATENAME(dw, create_date) = 'Saturday'
如果您还要限制create_date
的范围,可以在WHERE
子句中添加一个检查:
SELECT *
FROM yourTable
WHERE DATENAME(dw, create_date) = 'Saturday' AND
create_date BETWEEN '2016-06-04' AND '2016-06-25'
答案 1 :(得分:0)
您可以尝试在每个推荐日期使用datediff。 这个样本是2016-06-11&#39;。
select * from table
where datediff(d,'2016-06-11',create_date) in (0,7,14)
答案 2 :(得分:0)
您可以使用DATENAME
SQL函数来实现此功能
SELECT *
FROM yourTable
WHERE DATENAME(weekday, create_date) = 'Saturday'