Wenn Sie kein altes MySQL verwenden, können Sie dies in eine gespeicherte Funktion packen.
CREATE FUNCTION `LastMonday`() RETURNS DATETIME
RETURN DATE_SUB(CURDATE(), INTERVAL WEEKDAY(CURDATE()) DAY) ;
und dann anrufen
select LastMonday() as LastMonday
Aktualisierung:
Wenn Sie Leistungsprobleme haben, können Sie den Wert in einer Sitzungsvariablen beibehalten. So können Sie sicher sein, dass es nur einmal berechnet wird.
set @LastMonday=LastMonday();
select @Lastmonday;
(bei dieser einfachen Abfrage spielt das natürlich keine Rolle...)