Я получил эту таблицу в моей базе данных MySQL, 'users'.У него есть поля 'id' и 'value'.
Теперь я хочу обновить лотов строк в этой таблице с помощью одного SQL-запроса, но многиестроки должны получить другое значение.В настоящее время я использую это:
UPDATE users
SET value = CASE id
WHEN 1 THEN 53
WHEN 2 THEN 65
WHEN 3 THEN 47
WHEN 4 THEN 53
WHEN 5 THEN 47
END
WHERE id IN (1,2,3,4,5)
Это работает.Но я чувствую, что могу провести некоторую оптимизацию, поскольку я присваиваю только 3 или 4 разных значения.Как видите, сейчас это 47, 53 и 65. Есть ли способ, которым я могу обновить все строки, которые получают одно и то же значение одновременно в рамках одного и того же запроса?Или есть другой способ оптимизировать это?