RELATEED CONSULTING
相关咨询
选择下列产品马上在线沟通
服务时间:9:30-18:00
你可能遇到了下面的问题
关闭右侧工具栏
查找、删除表中重复的记录
  • 作者:xiaoxiao
  • 发表时间:2020-12-23 10:38
  • 来源:未知

       在Oracle中,每一条记录都有一个rowid,rowid在整个数据库中是唯一的,rowid确定了每条记录是在ORACLE中的哪一个数据文件、块、行上;在重复的记录中,可能所有列的内容都相同,但rowid不会相同,所以只要确定出重复记录中那些具有最大rowid的就可以了,其余全部删除。

实现方法: SQL> create table test( 2 name varchar(50), 3 sex varchar2(2) 4 ) 5 /<br>delete from test a where a.rowid!=(select max(rowid) from test b where a.name=b.nameand a.sex=b.sex);