Страницы

Поиск по вопросам

воскресенье, 26 мая 2019 г.

Как сделать UPDATE, а при отсутствии записи - INSERT?

Цель такая: если запись с таким id есть, тогда делаем инкремент значения в столбце count этой строки, а если же нет, то создаём новую запись (у столбца count задан DEFAULT 0). База данных - MySQL.
Конечно, можно сделать несколько проверок и реализовать такую логику через условия в самом языке программирования, но можно ли осуществить всё это одним SQL запросом (чтобы работало быстро), или, по крайней мере, сделать как-то изящнее?


Ответ

INSERT INTO `table` (`id`) VALUES (123456) ON DUPLICATE KEY UPDATE `count`=`count`+1;

Комментариев нет:

Отправить комментарий