查找表中多余的重复记录(多个字段)
select * from vitae a where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1)
什么是子查询
子查询转成join链接之后查询,注意数据重复的问题;
子查询会自动过滤子查询中重复的记录的,但是join链接,会出现重复数据
select user_name from user1 where id in (select user_id from user_kills); -- 使用子查询可以避免由于子查询中的数据产生的重复。
select a.user_name from user1 a join user_kills b on a.id =b.user_id; -- 会产生重复记录
select distinct a.user_name from user1 a join user_kills b on a.id =b.user_id; -- 使用distinct去除重复记录