Zuerst müssen Sie mit DAYOFWEEK
ausrechnen, wie viele Tage der letzte Montag her ist Funktion, dann subtrahieren Sie diese vom aktuellen Datum -
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)
Ich bin mir bei den +/- Zahlen hier nicht 100 % sicher, Sie sollten es aber daraus errechnen können
EDIT:Wenn dies immer nur am Sonntag am Ende des Zeitraums ausgeführt wird, gibt es eine viel einfachere Version -
SELECT * from table
WHERE date >= DATE_SUB(CURDATE(), INTERVAL 6 DAY)
AND date <= CURDATE()