mysql中[ON DUPLICATE KEY UPDATE]使
2020-12-06 本文已影响0人
DragonersLi
测试表结构
新建一个
执行完毕提示:
新建一个test
表,字段有ID
,mobile
,count
,create_time
,update_time
当我们执行insert插入数据时会提示Affected rows: 3, Time: 0.094000s
,同样数据再次执行会提示1062 - Duplicate entry '1' for key 'PRIMARY', Time: 0.133000s
insert into test (id,mobile,count,create_time)
values
(1,'18888880000',1,1595555555),
(2,'18888880001',2,1595555555),
(3,'18888880002',3,1595555555);
Mysql提示主键冲突,可不可以改变一下思路,当插入已存在主键的记录时,将插入操作变为修改?
insert into test (id,mobile,count,create_time)
values
(1,'18888880000',1,1595555555),
(2,'18888880001',2,1595555555),
(3,'18888880002',3,1595555555)
on duplicate key update count =count + values(count),update_time = values(create_time);