如何在 Sql 查询中包含周六和周日数据

How to include Saturday and Sunday data in Sql query

我想将前一天的数据提取到我的查询中。当我 运行 周一查询时,我也想获得周六和周日的数据。

查询的以下部分工作正常,但不包括 运行 星期一的星期六和星期日。谁能告诉我要添加什么?

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())