最初に、DAYOFWEEK
を使用して、先週の月曜日が何日前であったかを計算する必要があります。 関数を作成し、それを現在の日付から減算します-
SELECT * from table
WHERE date >= DATE_SUB(CURDATE(),INTERVAL MOD(DAYOFWEEK(CURDATE())-2,7) DAY)
AND date <= DATE_ADD(CURDATE(), INTERVAL MOD(7 - (DAYOFWEEK(CURDATE()) - 1), 7) DAY)
ここでの+/-の数値については、100%確信が持てませんが、これから解決できるはずです
編集:これが期間の終わりの日曜日にのみ実行される場合は、はるかに単純なバージョンがあります-
SELECT * from table
WHERE date >= DATE_SUB(CURDATE(), INTERVAL 6 DAY)
AND date <= CURDATE()