3

2 つの mySQL テーブル (テーブル マスターとテーブル バックアップ) があります 一部の行はバックアップ テーブルにコピーされ、一部はコピーされません...

ここで、単一のクエリを使用してバックアップ テーブルで使用できるすべての行をマスター テーブルから削除する必要があります。両方のテーブルに 700k 以上の行があります

4

2 に答える 2

1

何かのようなもの:

DELETE FROM master_table WHERE id IN (SELECT id FROM backup_table)

もちろん、動作するにはidフィールドに一意のキーが必要です

于 2012-11-20T22:00:26.983 に答える
1

私はこれを提案します:

DELETE m
FROM master_table m
JOIN backup_table b ON b.id = m.id

INその数の行に対して句を使用すると、パフォーマンスの問題が発生することになります。

于 2012-11-20T22:19:20.357 に答える