字段查找如何去掉数据库重复记录并且只保留一条记录
2013-05-20 21:52
393 查看
最近使用开发的过程中出现了一个小问题,顺便记录一下原因和方法--字段查找
在n条记录里,存在着些雷同的记录,如何能用SQL语句,删除掉重复并保留一条呢?方法如下:
1、查找表中过剩的重复记录,重复记录是根据单个字段(peopleId)来判断
2、删除表中过剩的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录
3、查找表中过剩的重复记录(多个字段)
每日一道理
只有启程,才会到达理想和目的地,只有拼搏,才会获得辉煌的成功,只有播种,才会有收获。只有追求,才会品味堂堂正正的人。
4、删除表中过剩的重复记录(多个字段),只留有rowid最小的记录
5、查找表中过剩的重复记录(多个字段),不包括rowid最小的记录
文章结束给大家分享下程序员的一些笑话语录: 姿势要丰富,经常上百度!
在n条记录里,存在着些雷同的记录,如何能用SQL语句,删除掉重复并保留一条呢?方法如下:
1、查找表中过剩的重复记录,重复记录是根据单个字段(peopleId)来判断
select * 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 vitae a where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq 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)
5、查找表中过剩的重复记录(多个字段),不包括rowid最小的记录
select * 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)
文章结束给大家分享下程序员的一些笑话语录: 姿势要丰富,经常上百度!
相关文章推荐
- 如何去掉数据库重复记录并且只保留一条记录
- 如何去掉数据库重复记录并且只保留一条记录
- 如何去掉数据库重复记录并且只保留一条记录
- 如何去掉数据库重复记录并且只保留一条记录
- 如何使用SQL删除某个字段重复的记录,保留其中一条
- mysql 查找重复的字段,并删除记录只保留一条
- MySQL根据某一个或者多个字段查找重复数据,并且保留某字段值最大的记录
- 【转】SQL删除某些字段重复的记录(只保留一条)
- Oracle 删除重复数据只留一条 查询及删除重复记录的SQL语句 1、查找表中多余的重复记录,重复记录是根据单个字段(Id)来判断 select * from 表 wher
- sql 删除表中多余的重复记录(多个字段),只保留一条记录
- 如何删除表中的重复记录只保留其中一条
- 转 如何删除表中的重复记录只保留其中一条
- 如何删除表中的重复记录只保留其中一条
- 如何删除表中的重复记录只保留其中一条
- 如何查询数据库中重复记录的一条记录
- 、去掉重复记录 保留一条
- 删除表中某字段重复的记录(只保留一条)
- Oracle 删除重复数据只留一条 查询及删除重复记录的SQL语句 1、查找表中多余的重复记录,重复记录是根据单个字段(Id)来判断 select * from 表 wher
- 转载:如何写个SQL语句查询一个字段里是否有重复记录如果有只读取其中一条记录
- SQL删除某些字段重复的记录(只保留一条)