1

2 つの異なる MySQL サーバーに 2 つのテーブルがあります。と である一意のキーがinvoiceありdateます。

特定の期間のすべてのレコードを取得して、別のテーブルに配置する必要があります。注意点は、既に存在するレコードがある可能性があるため、バックフィルするレコードからそれらを除外したいということです。

これを達成するために最も役立つクエリ、アイデア、スクリプトなどは何ですか?

4

2 に答える 2

2

レコード (またはフィールドの組み合わせ) を一意に識別する一意のキーをフィールドに配置する場合、MySQL ステートメントとして INSERT IGNORE INTO を使用できます。これによりレコードが挿入されますが、キーの競合が発生した場合 (そのレコードが既に存在する場合など)、単純に次のレコードに進みます。

INSERT INTO の代わりに REPLACE INTO を使用することもできます。これは INSERT IGNORE INTO に似ていますが、次のレコードに進むのではなく、競合する行を上書きします。

于 2012-06-22T16:08:26.647 に答える
0

マージ構文を見てください

TSQLmerge

于 2012-06-22T16:09:24.160 に答える