数据库如何删除重复数据,只留下一条

  方法一:

    利用另一个表,通过distinct查出来插入另一张表,然后再删除这张表的数据,将去重后的表的数据再插进来。

  方法二:

    1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 select * from people where peopleId in (select peopleId from people group by     peopleId  having count(peopleId) > 1)

    2、删除表中多余的重复记录(多个字段),只留有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)

posted @ 2015-07-10 15:27  lighttheripper  阅读(400)  评论(0编辑  收藏  举报