删除单记录表里地重复记录的方法
1法:利用表地自连接和ROWID,删除单记录表里地重复记录
delete from table where rowid != (select max(rowid) from table A B where A.column = B.column)
max 换成 min 也一样!
-----------------------------------------------------
2法根据object_name删除数据库中的重复记录
create table t as select obj#,name from sys.obj$;
再insert into t1 select * from t1 数次.
delete from t1 where rowid in (
select row_id from (
select rowid row_id,row_number() over (partition by obj# order by rowid ) rn
) where rn <> 1
);
delete from table where rowid != (select max(rowid) from table A B where A.column = B.column)
max 换成 min 也一样!
-----------------------------------------------------
2法根据object_name删除数据库中的重复记录
create table t as select obj#,name from sys.obj$;
再insert into t1 select * from t1 数次.
delete from t1 where rowid in (
select row_id from (
select rowid row_id,row_number() over (partition by obj# order by rowid ) rn
) where rn <> 1
);

浙公网安备 33010602011771号