1. 程式人生 > 實用技巧 >mysql查詢重複資料【轉】

mysql查詢重複資料【轉】

表全部資料

-------------------

1 查詢people_no重複的記錄

select * from people
where people_no in (select   people_no from   people group by   people_no having count(people_no) > 1);

----------------------

2 查詢people_no重複的記錄 ,排除最小id,如果刪除改為delete from

select * from people
where people_no in (select   people_no from people group by   people_no   having count(people_no) > 1) and  
id not in (select min(id) from   people group by people_no having count(people_no)>1);

-----------------------------

3 查詢people_no people_name重複的記錄

select * from people a
where (a.people_no,a.people_name) in (select people_no,people_name from people GROUP BY people_no,people_name HAVING count(*)>1);

-----------------------------------

4 查詢people_no people_name重複的記錄,排除最小id

select * from people a
where (a.people_no,a.people_name) in (select people_no,people_name from people GROUP BY people_no,people_name HAVING count(*)>1) and
a.id not in    (select min(id) from people GROUP BY people_no,people_name HAVING count(*)>1);