今天正好有个新需求,要求在一张表中,保证不插入重复的记录。mysql
即,保证每条记录中的某个字段的值不重复。sql
下面是我给出的SQL语句:测试
//存在-->更新 //不存在-->插入 UPDATE 表名称 SET 字段1=插入值1, 字段2=插入值2, 字段3=插入值3 WHERE 表名称.字段3 = 插入值3 ; INSERT INTO 表名称 (字段1, 字段2, 字段3) SELECT 插入值1, 插入值2, 插入值3 FROM DUAL WHERE NOT EXISTS ( SELECT * FROM 表名称 WHERE 表名称.字段3 = 插入值3 )
若是 “表.校验字段” != “参数”,则插入新纪录。spa
参考文献:.net
mysql 记录不存在时插入 记录存在则更新的实现方法code
mysql中如何判断指定字段的重复数据则不插入?(该贴中的四种方法,测试后发现都不可用或很差用。)htm