我試圖測量選擇成本的多少。通常我會通過在執行語句之前和之後獲得一致性獲取的值來完成此操作,但是,我想將它包裝在PL/SQL中,以便它更通用。然而,我正面臨的問題是,如何在不實際存儲結果的情況下簡單地運行select?在PL/SQL中測量SELECT語句的成本
其中一個想法我是包裝在一個for循環,像這樣
select value into getsBefore from v$sesstat ...
for dummy in (select name from my_table where city = 'XYZ') loop
i := i;
end loop;
select value into getsAfter from v$sesstat ...
但這似乎不是一個正確的做法。
我想我可以簡化我的問題 - 我怎麼能SELECT something INTO <nothing>
?
有關如何完成此任何想法或提示?因爲會話開始沒有其他辦法,而不是存儲快照的動作之前,然後執行該操作後,從一個新減去快照
感謝
聲明'空;'是更多表現一個NOP比'我: = i;' –
運行SELECT語句的成本取決於您未指定的各種因素,例如完成了多少次提取以及如何處理結果。爲了衡量這一點,你需要以預計通常運行的方式來實際運行語句。 –