数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

Oracle数据库删除表中重复记录的常见方法


发布日期:2018年06月21日
 
Oracle数据库删除表中重复记录的常见方法

方法一

delete from tb_channel a where arowid in

(select max(browid) from tb_channle b

where apolicyno=bpolicyno and aclasscode=bclasscode);

——这一办法在数据记录超过万时一般都会变得很慢

方法二

建立临时表清空原表插回原表如下例

create table temp_emp as (select distinct * from employee) ;

truncate table employee;

insert into employee select * from temp_emp;

——这一办法适用于较大的表的情况因为是块操作对应于大表效率会好很多

方法三

建立新表去重复放入删除原表如下例:

select distinct * into new_table from old_table

order by 主 键

drop table old_table

exec sp_rename new_tableold_table;

——这一办法适用于较大的表的情况因为是块操作对应于大表效率会好很多

上一篇:在*.SQL文件里获取并使用变量

下一篇:数据库的查询优化技术