Nejprve musíte zjistit, před kolika dny bylo minulé pondělí, pomocí DAYOFWEEK
funkci a poté ji odečtěte od aktuálního data -
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)
Nejsem si 100% jistý těmi čísly +/-, ale z toho byste měli být schopni to zjistit
EDIT:Pokud to bude probíhat pouze v neděli na konci období, existuje mnohem jednodušší verze -
SELECT * from table
WHERE date >= DATE_SUB(CURDATE(), INTERVAL 6 DAY)
AND date <= CURDATE()