sql >> Base de Datos >  >> RDS >> Mysql

Importar CSV para actualizar solo una columna en la tabla

Puede usar LOAD DATA INFILE para cargar de forma masiva las 800 000 filas de datos en una tabla temporal, luego use tablas múltiples UPDATE sintaxis para unir su tabla existente a la tabla temporal y actualizar los valores de cantidad.

Por ejemplo:

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;