欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Oracle删除表中重复数据的方法

程序员文章站 2022-03-09 22:04:45
创建表用于测试: 删除表中的重复的数据,保存rowid最小的一个数据: delete from tbl_a a where a.a_name in (select b.a_...

创建表用于测试:

Oracle删除表中重复数据的方法

删除表中的重复的数据,保存rowid最小的一个数据:

delete from tbl_a a
where 
       a.a_name in (select b.a_name from tbl_a b group by b.a_name having count(b.a_name)>1)
and 
       rowid not in (select min(rowid) from tbl_a c group by c.a_name having count(*)>1);

输出后的表:

Oracle删除表中重复数据的方法