Die Verwendung der INSERT INTO SELECT-Anweisung zum Batch-Einfügen kann die Effizienz beim Einfügen großer Datenmengen effektiv verbessern. Die spezifischen Schritte sind wie folgt: Bestimmen Sie die Batch-Größe, mehrere tausend Zeilen werden empfohlen. Erstellen Sie eine temporäre Tabelle, um die Teilmenge der einzufügenden Daten zu speichern. Verwenden Sie die INSERT INTO SELECT-Anweisung, um Daten aus der Quelltabelle in die temporäre Tabelle einzufügen. Verwenden Sie dabei die LIMIT-Klausel, um die Anzahl der gleichzeitig eingefügten Zeilen zu begrenzen. Verwenden Sie die INSERT INTO SELECT-Anweisung erneut, um Daten aus der temporären Tabelle in die Zieltabelle einzufügen. Löschen Sie temporäre Tabellen, die nicht mehr benötigt werden.
So verwenden Sie die INSERT INTO SELECT-Anweisung für die Stapeleinfügung
Wenn Sie eine große Datenmenge von einer Tabelle in eine andere Tabelle einfügen müssen, verwenden Sie den INSERT INTO SELECT
Anweisung zum Batch-Einfügen Das Einfügen kann die Effizienz verbessern. Batch-Einfügungen werden implementiert, indem große Einfügungsvorgänge in kleinere Batches aufgeteilt werden, wodurch die Belastung des Datenbankservers verringert wird. INSERT INTO SELECT
语句进行分批插入可以提高效率。分批插入通过将大型插入操作分解成较小的批次来实现,从而减少对数据库服务器的压力。
步骤:
INSERT INTO SELECT
语句,将数据从源表插入到临时表。使用 LIMIT
子句限制每次插入的行数,以创建一个批次。<code class="sql">INSERT INTO #temp_table SELECT TOP (@batch_size) * FROM source_table WHERE NOT EXISTS (SELECT 1 FROM destination_table WHERE id = source_table.id);</code>
INSERT INTO SELECT
语句,将数据从临时表插入到目标表。<code class="sql">INSERT INTO destination_table SELECT * FROM #temp_table;</code>
<code class="sql">DROP TABLE #temp_table;</code>
优点:
注意:
IDENTITY_INSERT
INSERT INTO SELECT
-Anweisung, um Daten aus der Quelltabelle in die temporäre Tabelle einzufügen. Verwenden Sie die LIMIT
-Klausel, um die Anzahl der gleichzeitig eingefügten Zeilen zu begrenzen, um einen Stapel zu erstellen. 🎜rrreeeINSERT INTO SELECT
erneut, um Daten aus der temporären Tabelle in die Zieltabelle einzufügen . 🎜 The Die Option IDENTITY_INSERT
kann zu Primärschlüsselkonflikten führen. 🎜🎜Stellen Sie sicher, dass die Quell- und Zieltabellen kompatible Schemata haben. 🎜🎜Überwachen Sie den Einfügungsprozess, um die Datenintegrität sicherzustellen. 🎜🎜Das obige ist der detaillierte Inhalt vonSo fügen Sie stapelweise in die Auswahl ein. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!