Може ли някой да ме уведоми дали има някакъв начин да разбера цената на съхранена процедура в Oracle? Ако няма директен начин, бих искал да знам каквито и да е заместители.
Начинът, по който намерих цената, е да направя автоматично проследяване на всички заявки, използвани в съхранената процедура, и след това да изчисля цената на процедурата според честотата на изпълнение на заявки.
В допълнение към това бих искал предложения за оптимизиране на моята съхранена процедура, особено на заявката, дадена по-долу.
Логика на процедурата:
По-долу е динамичната 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 || '))