Mysql
 sql >> Datenbank >  >> RDS >> Mysql

CSV importieren, um nur eine Spalte in der Tabelle zu aktualisieren

Sie können LOAD DATA INFILE verwenden um die 800.000 Datenzeilen massenweise in eine temporäre Tabelle zu laden, verwenden Sie dann multiple-table UPDATE Syntax, um Ihre vorhandene Tabelle mit der temporären Tabelle zu verknüpfen und die Mengenwerte zu aktualisieren.

Zum Beispiel:

CREATE TEMPORARY TABLE your_temp_table LIKE your_table;

LOAD DATA INFILE '/tmp/your_file.csv'
INTO TABLE your_temp_table
FIELDS TERMINATED BY ','
(id, product, sku, department, quantity); 

UPDATE your_table
INNER JOIN your_temp_table on your_temp_table.id = your_table.id
SET your_table.quantity = your_temp_table.quantity;

DROP TEMPORARY TABLE your_temp_table;