Primeiro você precisa descobrir quantos dias atrás foi a última segunda-feira, usando o
DAYOFWEEK
função, então subtraia isso da data atual - 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)
Não tenho 100% de certeza sobre os números +/- aqui, mas você deve conseguir resolver isso
EDIT:Se isso só for executado no domingo no final do período, existe uma versão muito mais simples -
SELECT * from table
WHERE date >= DATE_SUB(CURDATE(), INTERVAL 6 DAY)
AND date <= CURDATE()