mysql中删除重复数据

Posted 梁颖

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql中删除重复数据相关的知识,希望对你有一定的参考价值。

//首先我们需要知道我们重复的都有哪些数据,

//第一步:进行对数据表进行分组,group by.

//第二步:进行后通过having进行限制筛选,条数大于等于2的

//第三步:进行多表删除。

 

//案例:

//第一步,进行对数据分组,并通过having进行限制筛选,获得存在重复数据老王,如下:

//第二步,进行删除,请仔细看删除语句,我们把筛选出来的 AS t2 当做子表。来进行筛选。

例如id和id的下一位进行比较,如果name相同,就删除。

 

//请仔细看下面这句代码,删除的关键

mysql> delete t1 from ceshi AS t1 left join (select id,name from ceshi group by name having count(name)>=2) as t2 on t1.name = t2.name where t1.id>t2.id;

Query OK, 2 rows affected (0.10 sec)

//删除成功

 

//语句讲解:

//1、首先cheshi数据表起一个别名为 t1

//2、通过子连接来筛选出ceshi数据表中相同的数据,我们用他当做一张新的数据吧,别名为t2

//3、添加左外连接、

//4、然后根据id的编号来进行对比,例如id=1的name和id=2的name相同就进行删除。 

 

以上是关于mysql中删除重复数据的主要内容,如果未能解决你的问题,请参考以下文章

MySQL中删除重复数据的简单方法,mysql删除重复数据

MySQL 处理重复数据:防止表中出现重复数据统计过滤删除重复数据

Mysql数据库中多条重复数据,如何只删除一条?

MySQL中删除重复记录

Mysql根据一张表俩个字段删除重复数据

mysql 删除重复数据