一尘不染

如何在MySQL中更新是否存在(如果存在),如果不存在则插入(又称为“ upsert”或“ merge”)?

mysql

有没有一种简单的方法可以使用一个MySQL查询INSERT对不存在的行或存在的行进行简单的处理UPDATE


阅读 441

收藏
2020-05-17

共1个答案

一尘不染

是的INSERT ... ON DUPLICATE KEY UPDATE。例如:

INSERT INTO `usage`
(`thing_id`, `times_used`, `first_time_used`)
VALUES
(4815162342, 1, NOW())
ON DUPLICATE KEY UPDATE
`times_used` = `times_used` + 1
2020-05-17