Простая и довольно частая задача – есть поле, к примеру, state, которое может принимать значение 0 или 1. Задача состоит в том, что сделать переключение с 0 на 1 или 1 на 0.
Конечно, можно сначала получить текущее значение state, проверить равно ли оно 0 или 1, а в зависимости от результата, выставить новое значение. Но может ведь должен быть способ сделать это проще!?
UPDATE TABLE SET state = ABS(state - 1)
Приведенный выше способ подойдет только для случая, когда нужно сменить 0 на 1 и наоборот, а в общем случае можно воспользоваться
UPDATE TABLE SET state = CASE WHEN STATUS = 1
THEN 0
ELSE 1
END