ON DUPLICATE KEY UPDATE с условием WHERE

Я обновляю / вставляю значения в одну таблицу с помощью функции ON DUPLICATE KEY UPDATE . Пока все в порядке.

INSERT INTO table1 SET field1=aa, field2=bb, field3=cc
ON DUPLICATE KEY UPDATE SET field1=aa, field2=bb, field3=cc;

Но теперь я хотел бы добиться, чтобы обновление выполнялось только в том случае, если условие ( WHERE ) истинно.

Синтаксически неверно:

INSERT INTO table1 SET field1=aa, field2=bb, field3=cc
ON DUPLICATE KEY UPDATE SET field1=aa, field2=bb, field3=cc WHERE field4=zz;

Любые идеи, как правильный оператор SQL?

Большое спасибо.

7
задан Vladimir Vagaytsev 29 July 2016 в 08:25
поделиться