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

制限付きのMysql削除ステートメント

    DELETEでオフセットを指定することはできません のLIMIT 条項。

    したがって、これを行う唯一の方法は、クエリを次のように書き直すことです。

    DELETE FROM `chat_messages` WHERE id IN (select id from (select id
                                               FROM `chat_messages`
                                           ORDER BY `timestamp` DESC
                                              LIMIT 20, 50) x)
    

    主キーidがあるとします。 列

    UPD :現在変更されているテーブルから選択できないため、mysqlをだますためにダブルネストを実装する必要があります(Martin Smithに感謝)




    1. AES_DECRYPTがnullを返すのはなぜですか?

    2. Mysqldump:挿入するテーブルの名前を変更できますか?

    3. Oracleに複数の行を挿入する

    4. 行に「名前」がない場合、MySQL LOAD XML LOCAL INFILEを使用できますか?