1.存在则更新(不影响其他字段),不存在则插入
insert into 表名(字段1,字段2) VALUES(值1,值2)ON DUPLICATE KEY UPDATE username=值3
如上语句的意思的意思是如果字段1不存在(主键,索引或者唯一条件不存在),则执行插入语句,存在则执行更新语句,该更新只更新需要的字段,不影响其他字段的值;
2.存在则更新(先删除后更新),不存在则插入
REPLACE INTO 表名(字段1,字段2)VALUES(值A,值B);
如上语句的意思的意思是如果字段1不存在(主键,索引或者唯一条件不存在),则执行插入语句,存在则执行更新语句,该更新是将该条存在的记录删除,然后再插入,所以其他的字段的值都是NULL;
3.存在则忽略,不存在插入
INSERT IGNORE INTO 表名(字段1,字段2)VALUES(值A,值B);
如上语句的意思是如果字段1不存在(主键,索引或者唯一条件不存在),则执行插入语句,如果存在,直接忽略不修改任何数据
来源地址:https://blog.csdn.net/weixin_44747103/article/details/127316315