Есть ли способ получить значение до и обновить запрос в самом запросе обновления?Получить значение поля перед обновлением
Например:
UPDATE t SET field1 = 'new', field2 = IF (field2 = field1, 'new', field2))
В 'field2 = field1' Я хочу, чтобы проверить предыдущее значение поля. Mysql работает таким образом, что обновляет поле1, а затем сравнивает его с новым значением, поэтому сравнение всегда будет «IF (field2 =« new », ...»
Поэтому мне хотелось бы что-то вроде
UPDATE t SET field1 = 'new', field2 = IF (field2 = PREVIOUS_VALUE(field1), 'new', field2))
Обновлено:
подкачка может не работать иногда в более сложных примерах, когда я хочу это так:
UPDATE t SET field1 = IF (field1 = PREVIOUS_VALUE(field2), 'new', field1)), field2 = IF (field2 = PREVIOUS_VALUE(field1), 'new', field2))