我们在日常开发中经常遇到一条记录如果没有就插入如果有的话就更新,其实MySQL一条语句就可以搞定,这个平时用的时候老忘,今天把它记录下
比如表test 有id,title字段,id是主键,
insert into `test` (id,title) values (3,'test3') on duplicate key update title=values(title)
如果id等于3这条记录不存在的话就插入,有的话就把id等于3的这条记录的title给更新了,
这个更新是以主键为准的,如果既有主键又有唯一索引的话,还是以主键为准的
duplicate key update title=values(title)这后边可以加多个字段的,比如表又多加了一个title2字段,
可以改成:duplicate key update title=values(title), title2=values(title2)