zoukankan      html  css  js  c++  java
  • mysql语句删除重复数据,保留一条;查询所有重复数据;查询重复数据的一条,

    //显示重复的所有条

      SELECT * FROM 表名
      WHERE (字段1,字段2,...)
      IN (SELECT 字段1,字段2,...FROM 表名 GROUP BY 字段1,字段2,... HAVING COUNT(*)>1)

    //只显示重复中的一条

      SELECT * FROM 表名 GROUP BY CONCAT(字段1,字段2,...) HAVING COUNT(*)>1

    //删除重复数据(保留ID最小的一条)
      DELETE FROM 表名
      WHERE (字段1,字段2,...)
      IN (SELECT 字段1,字段2,... FROM
        (SELECT 字段1,字段2,... FROM 表名 GROUP BY 字段1,字段2,... HAVING COUNT(*)>1) AS b

        )
      AND Id NOT IN (SELECT id AS id FROM
        (SELECT MIN(Id) AS id FROM 表名 GROUP BY 字段1,字段2,... HAVING COUNT(*)>1) AS c

        )

    注意:在删除重复数据语句中加深的部分,from后面需要重新套一层查询语句,负责报错。

  • 相关阅读:
    pom.xml 报错
    微信支付,提示当前页面URL未注册
    echarts + highcharts 柱状图
    二维码生成
    Eclipse
    SQLServer 安装及配置
    模板引擎doT.js用法详解
    SQL Server 笔记
    Flex 弹性盒模型
    查看Linux是Redhat 还是centos 还是...
  • 原文地址:https://www.cnblogs.com/tec-1988/p/6518521.html
Copyright © 2011-2022 走看看