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

SQLでのREPLACEとINSERT

    ドキュメント によると 、違いは次のとおりです:

    だからそれは何をするのか:

    • 使用可能なインデックスの1つを使用して行を一致させてみてください;
    • 行がまだ存在しない場合:新しい行を追加します;
    • 行がすでに存在する場合:既存の行を削除し、後で新しい行を追加します。

    これを使用すると、別のinsertで役立つ場合があります およびupdate ステートメント?

    • これを安全に呼び出すことができ、既存の行について心配する必要はありません(1つのステートメントと2つのステートメント)。
    • inserting時に関連データを削除する場合 /updatingreplaceを使用できます :関連するすべてのデータも削除されます);
    • トリガーを起動する必要があり、insertが必要な場合 (悪い理由、大丈夫)


    1. MySQLのcsvテーブルをインポートするときにUTF8文字列が無効です

    2. PostgreSQLでコンマ区切りリストとしてクエリ結果を返す方法

    3. 順序付けされていないMySQLリクエストの自然な結果の順序を駆動するもの

    4. mysqlクエリでgroupbyおよびorderby