sql >> データベース >  >> RDS >> Mysql

一定時間後にMySQLレコードを削除する方法

    この条件を使用してみることができます:

    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の回避策がなく、システムとスムーズに統合されます。



    1. SQLiteでワードラップを有効にする2つの方法

    2. SQLServerデータベーステーブルのエクスポートおよびインポートメソッド

    3. ms-accessにgroup_concat関数はありますか?

    4. PostgreSQL/NodeJSを使用して結果の配列としてJOINテーブルを取得します