在Oracle中从表中删除重复行我正在Oracle中测试一些内容,并使用一些示例数据填充了一个表,但是在这个过程中,我意外地加载了重复记录,所以现在我无法使用其中的一些列创建主键。如何删除所有重复行而只保留其中一个行?
3 回答
慕哥9229398
TA贡献1877条经验 获得超6个赞
rowid
DELETE FROM your_tableWHERE rowid not in(SELECT MIN(rowid)FROM your_tableGROUP BY column1, column2, column3);
column1
, column2
column3
温温酱
TA贡献1752条经验 获得超4个赞
delete from t where rowid IN ( select rid from (select rowid rid, row_number() over (partition by companyid, agentid, class , status, terminationdate order by rowid) rn from t) where rn <> 1);
- 3 回答
- 0 关注
- 564 浏览
添加回答
举报
0/150
提交
取消