码迷,mamicode.com
首页 > 数据库 > 详细

mysql避免插入重复数据

时间:2014-10-19 01:23:29      阅读:229      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   io   使用   sp   数据   div   on   

 我们在进行数据库操作的时候,有时候需要插入不重复的数据。所谓不重复的数据,可以是某个字段不重复,也可以是某几个字段重复。当然我们可以在插入之前先将数据库的数据查询出来,然后与将要插入的数据进行对比,如果出现一样的数据信息,那么就不进行插入,但是这种方法是不明智的。如果数据库的数据很多,那么必然影响到效率。最近在做一个项目的时候,出现了这种情况,其实我们可以使用sql语句帮助我们达到目的。下面就是我写的sql语句:

1 insert into question(path) select $value from DUAL where $value not in (select path from question)

 因为我在PHP页面中使用的sql语句,所以$value是我申明的变量.其中DUAL表示在虚拟表中进行查询。这样一句SQL就能保证我在requestion表中不会插入相同的path。

 如果你还想比较其他数据是否有重复,那么SQL语句的格式为:

insert into tablename(表名)  (name1,name2.....)(要比较的字段名)   
select $value1,$value2,......(要插入的真实数据)    
from DUAL where $value1,$value2,......(要插入的真实数据) 
not in (
        select name1,name2,....(要比较的字段名) from tablename(表名))    

 很简单吧?喵~~

mysql避免插入重复数据

标签:style   blog   color   io   使用   sp   数据   div   on   

原文地址:http://www.cnblogs.com/zhouxuanyu/p/4034095.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!