Soy nuevo en MySQL.Actualizar varias filas con valores diferentes en una sola consulta - MySQL
estoy usando esto para actualizar varias filas con diferentes valores, en una sola consulta:
UPDATE categories
SET order = CASE id
WHEN 1 THEN 3
WHEN 2 THEN 4
WHEN 3 THEN 5
END,
title = CASE id
WHEN 1 THEN 'New Title 1'
WHEN 2 THEN 'New Title 2'
WHEN 3 THEN 'New Title 3'
END
WHERE id IN (1,2,3)
estoy usando "WHERE" para mejorar el rendimiento (y sin que cada fila de la tabla sería probado).
Pero lo que si tengo este senario (cuando no quiero actualizar el título de ID 2 y 3):
UPDATE categories
SET order = CASE id
WHEN 1 THEN 3
WHEN 2 THEN 4
WHEN 3 THEN 5
END,
title = CASE id
WHEN 1 THEN 'New Title 1'
END
WHERE id IN (1,2,3)
El código anterior para cambiar el título Identificación del 2 y 3 en "NULL" ...
¿Cuál es la forma correcta de realizar la consulta, pero omita actualizar el título para los identificadores 2 y 3 y aún así mantener el rendimiento "WHERE id IN"?
Tal como este conjunto de títulos
UPDATE categories
SET order = CASE id
WHEN 1 THEN 3
WHEN 2 THEN 4
WHEN 3 THEN 5
END,
title = CASE id
WHEN 1 THEN 'New Title 1'
WHEN THEN
WHEN THEN
END
WHERE id IN (1,2,3)