如何独立于今天的日期从上周开始到结束Mysql

问题描述

我正在尝试使用以下内容指示具有上周数据(星期一至星期日)的所有行,为我提供 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

解决方法

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

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

或上周

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