欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

mysql 查询重复字段统计重复个数和删除重复字段的重复数据

程序员文章站 2022-03-06 18:03:16
...

假设我们有表A 里面有字段  field 里面有很多重复数据。

现在需要查询当前字段重复的个数

mysql>select filed ,count(*) as total from A group by field having count(1)>1

那么having 的在group by 后面执行 取到group by 的结果后在进行聚合统计大于1的数数据行mysql 查询重复字段统计重复个数和删除重复字段的重复数据

mysql 查询重复字段统计重复个数和删除重复字段的重复数据

那么如何删除重复的数据呢只剩下一条呢??

 DELETE   FROM chat_test  WHERE  `name` IN   ( SELECT  h1.name FROM  (SELECT `name` FROM chat_test GROUP BY `name` HAVING COUNT(1)>1 ) AS h1 )  AND id NOT IN ( SELECT h2.id  FROM ( SELECT id FROM chat_test GROUP BY `name` HAVING COUNT(1)>1 ) AS h2)
 
先把以上查询出来的结果当做条件 name in 查询的结果集 之后 在AND id  NOT in (id 字段) 那么现在就是

name=结果集 ADN id!=结果集即可

mysql 查询重复字段统计重复个数和删除重复字段的重复数据