任何人都可以让我知道是否有任何方法可以找出 Oracle 中存储过程的成本?如果没有直接的方法,我想知道任何替代品。
我发现成本的方法是自动跟踪存储过程中使用的所有查询,然后根据查询执行的频率估计 proc 成本。
除此之外,我想要优化我的存储过程的建议,尤其是下面给出的查询。
过程逻辑:
下面是我的存储过程中用作游标的动态 sql 查询。此游标在循环内打开并获取。我获取信息并将它们放入一个可变数组中,对数据进行计数,然后将其插入到表中。
我的目标是找出 proc 的成本以及优化 sp。
SELECT DISTINCT acct_no
FROM raw
WHERE 1=1
AND code = ''' || code ||
''' AND qty < 0
AND acct_no
IN (SELECT acct_no FROM ' || table_name || ' WHERE counter =
(SELECT MAX(counter) FROM ' || table_name || '))