如何从上周开始到周末独立于今天';s日期(Mysql)

如何从上周开始到周末独立于今天';s日期(Mysql),mysql,sql,date,intervals,snapshot,Mysql,Sql,Date,Intervals,Snapshot,我试图通过以下方式显示上周数据(周一至周日)的所有行,给我2月2日至2月8日(星期二-周一)的数据-因此它是动态的,取决于本周的哪一天,明天将给我周三-周二的数据。有没有办法解决这个问题: case when `Date` >= date_sub(now(),INTERVAL 1 WEEK) and `Date`< (date_sub(now(),INTERVAL 1 WEEK)+7) then 1 else 0 end 当`Date`>=Date\u sub(现在(),间隔1周

我试图通过以下方式显示上周数据(周一至周日)的所有行,给我2月2日至2月8日(星期二-周一)的数据-因此它是动态的,取决于本周的哪一天,明天将给我周三-周二的数据。有没有办法解决这个问题:

case when `Date` >= date_sub(now(),INTERVAL 1 WEEK) and 
`Date`< (date_sub(now(),INTERVAL 1 WEEK)+7) then 1 else 0 end
当`Date`>=Date\u sub(现在(),间隔1周)和
`日期`<(日期子项(现在(),间隔1周)+7)然后1其他0结束

在mysql中,您可以尝试使用week()检查curdate()的同一周

还是前一周

case when week(`Date`) = weeek(curdate())-1 
  AND year(`Date`) = year(curdate()) then 1 else 0 end

但这一个将确定本周的数据,而不是上周的数据,不是吗?我想指出上周从周一到周六的数据。上周是什么。。实际的一周-1。。试着更好地解释我的错。如果今天是2月9日,我的案例中上周的数据将是2月1日到2月7日之间的数据。(周一至周日)然后是实际的第1周。。
case when week(`Date`) = weeek(curdate())-1 
  AND year(`Date`) = year(curdate()) then 1 else 0 end