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

行が存在する場合は更新し、存在しない場合は新しい行を別のテーブルに挿入します

    ON DUPLICATE KEYUPDATE<を指定した場合/ code> 、および UNIQUEに重複する値を引き起こす行が挿入されます インデックスまたはPRIMARY KEY UPDATE 古い行のが実行されます。たとえば、列aが UNIQUEとして宣言されている場合 値1が含まれ、次の2つのステートメントは同じ効果があります。

    INSERT INTO table (a,b,c) VALUES (1,2,3)
      ON DUPLICATE KEY UPDATE c=c+1;
    
    UPDATE table SET c=c+1 WHERE a=1;
    


    1. 重複エントリエラー1062を与えるMySQLクエリ

    2. SQLite JSON_TYPE()

    3. 2つのテーブルの違いを見つける方法は?

    4. Atomic UPDATE..PostgresのSELECT