我在Oracle中测试了一些东西,并用一些示例数据填充了一个表,但是在这个过程中,我意外地加载了重复的记录,所以现在我不能使用一些列创建主键。
如何删除所有重复的行并只保留其中的一行?
发布于 2009-02-09 17:44:15
您应该使用游标for循环执行一个小的pl/sql块,并删除不想保留的行。例如:
declare
prev_var my_table.var1%TYPE;
begin
for t in (select var1 from my_table order by var 1) LOOP
-- if previous var equal current var, delete the row, else keep on going.
end loop;
end;https://stackoverflow.com/questions/529098
复制相似问题