当key不是mysql中的主键时“updatewhen duplicate else insert”

pgky5nke  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(274)

如何做 "on duplicate key update" 当钥匙不在 primary .
例子:

INSERT INTO customers (`id`,`user_id`, `status`, `category_id`, `date`)
VALUES  ('1','123','test','12','2018-09-08') ON DUPLICATE KEY UPDATE
id=VALUES(id),
status=values(status),
date=values(date);

如果两个都是,我想更新表 user_id 以及 category 否则插入新行。

dgiusagp

dgiusagp1#

根据注解,唯一索引缺失:

CREATE UNIQUE INDEX user_category ON customers (user_id, category_id)

相关问题