• mysql避免插入重复数据


     我们在进行数据库操作的时候,有时候需要插入不重复的数据。所谓不重复的数据,可以是某个字段不重复,也可以是某几个字段重复。当然我们可以在插入之前先将数据库的数据查询出来,然后与将要插入的数据进行对比,如果出现一样的数据信息,那么就不进行插入,但是这种方法是不明智的。如果数据库的数据很多,那么必然影响到效率。最近在做一个项目的时候,出现了这种情况,其实我们可以使用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(表名))    

     很简单吧?喵~~

  • 相关阅读:
    ESLint规则整理与实际应用
    node vue 项目git 管理
    Node.js安装及环境配置之Windows篇
    Windows服务 --- SqlDependency的使用
    插槽
    报表菜单的配置
    HTTP 错误 500.21
    项目部署错误 HTTP Error 500.19
    Steup factory 面板介绍
    Steup Factory 操作注册表
  • 原文地址:https://www.cnblogs.com/zhouxuanyu/p/4034095.html
Copyright © 2020-2023  润新知