Mysql查询重复数据常用方法

        在平常的开发工作中,我们经常需要查询数据,比如查询某个表中重复的数据,那么,具体应该怎么实现呢?常用的方法都有哪些呢?

测试表中数据:

Mysql查询重复数据常用方法_第1张图片

 

1:查询名字重复的数据 having:

select name from user_info GROUP BY name having count(name) > 1

Mysql查询重复数据常用方法_第2张图片

2:查询名字重复数据的所有字段 inner join + having:

select ui.id,ui.name,ui.address from user_info ui inner join 
(select name from user_info GROUP BY name having count(name) > 1) tt on ui.name = tt.name

 Mysql查询重复数据常用方法_第3张图片

3:查询名字和住址都相同的所有字段 inner join + having:

select ui.id,ui.name,ui.address from user_info ui inner join 
(select name,address from user_info GROUP BY name,address having count(*) > 1) tt on ui.name = tt.name

 Mysql查询重复数据常用方法_第4张图片

 4:使用distinct,distinct会将重复的记录过滤掉:

select DISTINCT name from user_info;

Mysql查询重复数据常用方法_第5张图片

        以上为查询mysql数据重复常用的方法,温故而知新,加油,美好的风景一直在路上!

 

你可能感兴趣的:(mysql,数据库)