删除单记录表里地重复记录的方法

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
);






posted @ 2006-03-02 17:19  城市里的鱼  阅读(340)  评论(0)    收藏  举报