0
DELETE FROM LIM_STAGE.RESULTS A 
WHERE ROWID > ( SELECT min(1) 
                FROM LIM_STAGE.RESULTS B
                WHERE A.result_number = B.result_number );

此代码返回错误错误 ORA-00932:不一致的数据类型:预期的 ROWID 得到了 NUMBER

而且我不确定如何更改它以获得所需的结果。

似乎我有数字 1 的地方应该是别的东西,但我无法弄清楚如何实际建立各个行号。

感谢帮助摆脱这些重复的行。这是一个包含许多索引和触发器的大表……讨厌重写所有内容。

感谢您的任何帮助..

4

1 回答 1

0

这应该有效:

delete from lim_stage.results
where rowid not in (
    select min(rowid)
    from lim_stage.results
    group by result_number
)
于 2012-04-23T22:25:18.637 回答