mysql 查找除id外其他重复的字段数据

Posted 弃身锋刃端!

tags:

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

如表 test1 有多个重复的字段

其中有些数据完全重复是错误的数据,我们要把他找出来,然后删除掉

select * from test1 a where (a.phone,a.name) in (

select phone,name from test1 group by phone,name having count(*)>1

) and id not in (

select max(id) from test1 group by phone,name having count(*)>1

);

结果

然后就可以用php或其他语言来删除这些 id 了

或者 

把前面的那个select换成

delete 

delete from test1 where (a.phone,a.namein (

select phone,name from test1 group by phone,name having count(*)>1

) and id not in (

select max(id) from test1 group by phone,name having count(*)>1

);

以上是关于mysql 查找除id外其他重复的字段数据的主要内容,如果未能解决你的问题,请参考以下文章

mysql中如何查出除了某个字段外的所有字段的值??

MYSQL过滤表中某几个字段重复的数据

mysql 查重复的数据(主键除外)

Mysql删除重复记录,保留id最小的一条

MySQL 根据某一个或者多个字段查找重复数据

MySQL 根据某一个或者多个字段查找重复数据