1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断
select distinct * from people
where peopleId in
(
select peopleId from people group by peopleId having count (peopleId) > 1
)
2、删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录
delete from people
where peopleId in
(
select peopleId from people group by peopleId having count (peopleId) > 1
)
and rowid not in
(
select min(rowid) from people group by peopleId having count(peopleId )>1
)
3、查找表中多余的重复记录(多个字段)
SELECT * FROM C_Yyt
WHERE (Elon IN (SELECT elon FROM C_Yyt GROUP BY elon, wd HAVING COUNT(*) > 1)) AND (wd IN (SELECT wd FROM C_Yyt GROUP BY elon, wd HAVING COUNT(*) > 1))
4、删除表中多余的重复记录(多个字段),只留有rowid最小的记录
delete from vitae a
where (a.peopleId, a.seq) in
(
select peopleId, seq from vitae group by peopleId,seq having count(*) > 1
)
and rowid not in
(
select min(rowid) from vitae group by peopleId,seq having count(*)>1
)