古いMySQLを使用していない場合は、これをストアド関数でラップできます。
CREATE FUNCTION `LastMonday`() RETURNS DATETIME
RETURN DATE_SUB(CURDATE(), INTERVAL WEEKDAY(CURDATE()) DAY) ;
次に電話
select LastMonday() as LastMonday
更新:
パフォーマンスの問題が発生している場合は、セッション変数に値を保持できます。そうすれば、1回だけ計算されることを確認できます。
set @LastMonday=LastMonday();
select @Lastmonday;
(この単純なクエリでは、もちろん違いはありません...)