【发布时间】:2020-06-19 05:08:57
【问题描述】:
我有一个包含MINUS 的 PLSQL 查询。
select id from small_table where col ='xxx'
MINUS
select id from large_table;
large_table 有139070 行,small_table 有7459 行。执行时我收到ORA-02395: exceeded call limit on IO usage。我尝试用not in 和not exists 替换MINUS。我已阅读有关该错误的信息,但无法与 DBA 协商更改 LOGICAL_READS_PER_CALL。现在,我可以使用 2 个游标从 2 个表中获取数据,然后在 PLSQL 端执行 MINUS 等效逻辑吗?或者即使使用游标逻辑我也会得到ORA-02395。或者我可以自己重写查询?
另外,使用 BULK COLLECT INTO 和 table OF *** 的游标可以获取的最大行数是多少。
【问题讨论】:
标签: oracle plsql oracle11g database-cursor