この条件を使用してみることができます:
WHERE date < DATE_SUB(NOW(), INTERVAL 7 DAY)
SQLスクリプト全体が次のようになります。
CREATE EVENT delete_event
ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 DAY
ON COMPLETION PRESERVE
DO BEGIN
DELETE messages WHERE date < DATE_SUB(NOW(), INTERVAL 7 DAY);
END;
ただし、あなたの代わりに、単純なcronスクリプトを使用して特定の問題を解決します。これを行う理由は単純です。コードの保守が簡単で、醜いSQLの回避策がなく、システムとスムーズに統合されます。