Подтвердить что ты не робот

Как увеличить поле в MySql с помощью "ON DUPLICATE KEY UPDATE" при вставке нескольких строк?

Как увеличить поле в MySql с помощью "ON DUPLICATE KEY UPDATE" при вставке нескольких строк?

Для одной строки:

INSERT INTO table 
  (a, counter_elem) 
VALUES 
  (1, 1)
ON DUPLICATE KEY UPDATE counter_elem = counter_elem+1;

Для нескольких строк:

INSERT INTO table 
  (a, counter_elem) 
VALUES 
  (1, 1),
  (2, 1)
ON DUPLICATE KEY UPDATE counter_elem = ?;

Это не работает:

counter_elem = VALUES(counter_elem)+1
4b9b3361

Ответ 1

Точно так же!

INSERT INTO table 
  (a, counter_elem) 
VALUES 
  (1, 1),
  (2, 1)
ON DUPLICATE KEY UPDATE counter_elem = counter_elem + 1;

Там нет проблем!