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

自動インクリメントせずにmysqlテーブルの行を再利用する

    より良い解決策は、フィードに一意のキーを設定することです(自動インクリメントされたキーは別として)。次に、 INSERT ON DUPLICATE KEY UPDATE

    INSERT INTO feeds (name, url, etc, etc2, `update_count`) 
        VALUES ('name', 'url', 'etc', 'etc2', 1) 
        ON DUPLICATE KEY UPDATE
            `etc` = VALUES(`etc`),
            `etc2` = VALUES(`etc2`),
            `update_count` = `update_count` + 1;
    

    利点は、IDをインクリメントせず、1つのアトミッククエリでそれを実行できることです。さらに、変更する必要があるものを更新/変更するだけです。 (update_countを含めたことに注意してください フィールドを更新する方法を示す列)...



    1. SQLフィドル出力エラー

    2. MicrosoftIgniteセッションレコーディングが表示できるようになりました。

    3. SQLServerで大文字を含む行を見つける5つの方法

    4. MySQL-SELECT ... WHERE id IN(..)-正しい順序