Я хочу установить для всех значений столбца значение 0, кроме id 4. Можно ли сделать это в одном запросе?
Я хочу что-то вроде этого:
UPDATE table SET value = 0 WHERE id != 4 and SET value = 1 WHERE id = 4
Любая помощь приветствуется.
Вы также можете использовать оператор if. Если id = 4 истинно, тогда установите значение = 1, иначе установите значение = 0. Надеюсь, это может вам помочь.
Update table set value = if(id=4, 1,0)
Установите значение, равное id = 4, которое является логическим выражением, которое оценивается как 1, если оно равно true или 0, если оно равно false:
id = 4
1
true
0
false
UPDATE table SET value = (id = 4)
Используйте выражение case:
case
update mytable set value = case id when 4 then 1 else 0 end
ОБНОВЛЕНИЕ таблицы SET (значение = 0 WHERE id! = 4), (value = 1 WHERE id = 4)