REPLACE SELECT FROM文を実行して、既存のデータを上書きすることで、テーブル間のレコードをリアルタイムでコピーできます。 システムは最初に、挿入されるレコードの主キーが既存のレコードの主キーと同じかどうかをチェックします。 同じ場合、システムは既存のレコードを削除し、新しいレコードを挿入します。 それ以外の場合、システムは新しいレコードのみを挿入します。

構文

table_nameに置き換える
[(column_name,...)]
クエリ;    

Parameters

  • query: SELECT FROM TABLEまたはSELECT FROM VIEWステートメント。
  • column_name: 列の名前。 ソーステーブルの特定の列からターゲットテーブルにのみデータをコピーする場合、SELECT句で指定された列は、REPLACE句で指定されたものと同じシーケンスとデータ型を持つ必要があります。

注意事項

REPLACE SELECT FROMステートメントを実行してレコードを挿入する前に、ターゲットテーブルが存在する必要があります。

列名を指定して、customerテーブルの指定された列のみのデータをnew_customerテーブルにコピーします。

REPLACE INTO new_customer (customer_id, customer_name, phone_num)
  SELECT customer_id、customer_name、phone_num顧客から
  customer.customer_name = 'Alan';