sql 删除重复记录
2015-05-06 19:31
239 查看
测试数据准备
赋予test_user查询scott用户emp表的权限grant select on scott.emp to test_user;
基于scott用户的EMP表,使用test_user 创建EMP表
create table emp as select * from scott.emp;
再次插入相同的数据
insert into emp select * from emp;
查询当前数据
select * from emp order by empno asc;
可以看到每条记录出现了两次
删除重复记录
1、删除表中多余的重复记录,重复记录是根据单个字段(EMPNO)来判断,只留有rowid最小的记录delete from emp where empno in (select empno from emp group by empno having count(empno) > 1) and rowid not in (select min(rowid) from emp group by empno having count(empno)>1)
2、删除表中多余的重复记录,重复记录是根据多个字段(empno ,ename)来判断,只留有rowid最小的记录
delete from emp a where (a.empno ,a.ename) in (select empno,ename from emp group by empno,ename having count(*) > 1) and rowid not in (select min(rowid) from emp group by empno,ename having count(*)>1)
相关文章推荐
- 在SQL中删除重复记录(多种方法)
- sql重复记录查询与删除
- sql删除重复的记录
- Sql 学习记录 一种删除重复数据的方法
- SQL删除逻辑重复记录的最简方法
- 在SQL中删除重复记录(多种方法) [转]
- sql语句删除重复的记录的方法
- 如何使用SQL删除某个字段重复的记录,保留其中一条
- SQL查询重复记录,删除重复记录
- SQL怎么查询重复记录,删除重复记录
- Sql server 删除重复记录的SQL语句保留一条
- Sql server 删除重复记录的SQL语句
- 2008年10月小记(SQL删除重复记录,生成表结构,字符串特性,statistics io)
- 用SQL语句删除重复记录的四种方法
- sql查询重复记录、删除重复记录方法
- 查询并删除重复记录的SQL语句
- 转-查询及删除重复记录的SQL语句
- SQL删除数据库中重复的数据记录
- 【转】SQL删除重复记录,只保留其中一条
- 使用一条SQL语句删除表中重复记录