Om du inte använder en uråldrig MySQL kan du slå in detta i en lagrad funktion.
CREATE FUNCTION `LastMonday`() RETURNS DATETIME
RETURN DATE_SUB(CURDATE(), INTERVAL WEEKDAY(CURDATE()) DAY) ;
och ring sedan
select LastMonday() as LastMonday
Uppdatering:
Om du har prestandaproblem kan du bevara värdet i en sessionsvariabel. På så sätt kan du vara säker på att det bara kommer att beräknas en gång.
set @LastMonday=LastMonday();
select @Lastmonday;
(i den här enkla frågan gör det naturligtvis ingen skillnad...)