我想在前一天将数据拉入JUST的查询中。当我在周一运行查询时,我希望周六和周日也有数据。
查询的以下部分运行良好,但在周一运行时不包括Sat和Sun。有人能告诉我要添加什么吗?
where ([ImportDate] = DATEADD(DAY, CASE DATENAME(WEEKDAY, GETDATE())
WHEN 'Sunday' THEN -2
WHEN 'Monday' THEN -3
ELSE -1 END,
DATEDIFF(DAY, 0, GETDATE())))
你很接近。但是,您希望通过使用>=
<
或BETWEEN
使其成为一个日期范围,其中包括您想要的截至当前日期的前几天。
where [ImportDate] >= DATEADD(DAY, CASE DATENAME(WEEKDAY, GETDATE()) WHEN 'Sunday' THEN -2 WHEN 'Monday' THEN -3 ELSE -1 END, DATEDIFF(DAY, 0, GETDATE()))
and [ImportDate] < CONVERT(DATE,GETDATE())