¿Cuál es la forma más fácil de actualizar muchas filas en una tabla? Tengo un archivo csv que se ve así:
|primary_key |value|
| 1 | xyz|
| 2 | abc|
| 3 | def|
...
Las filas con estas claves primarias ya existen en la tabla de destino
Me gustaría actualizar la tabla de destino con estos valores. ¿Hay sintaxis para poder escribir algo como:
update mytable set value = ('xyz', 'abc', 'def') where primary key = (1,2,3);
Mirando a través de la Referencia de actualización de MySQL , este sitio ( MySQL - actualización csv ), SO ( actualizar varias filas , múltiples actualizaciones de db , actualizar varias filas ), sospecho que la respuesta es "no", pero me gustaría confirmar que esto es verdad.
Respuestas:
Primero, aquí hay datos de muestra
Aquí está la nueva consulta
Aquí está la nueva consulta ejecutada
fuente
UPDATE table INNER JOIN ... USING(id) SET ...
es genialSuponiendo que no desea cargar los datos del archivo CSV en una tabla de base de datos y luego hacer una correlación
UPDATE
,entonces deberías poder usar un
CASE
fuente