我正在處理pl/sql代碼。請幫助計算時間以下兩種方法。此Oracle查詢需要多少額外的計算時間?
方法1:
if count(x)>1
then
select sum(price) into vprice from table1 where x between var1 and var2;
else
select price into vprice from table1 where x=var1;
end;
方法2:
select sum(price) from table1 where x between var1 and var2;
我們確定基於其它條件的代碼以上某處VAR1和VAR2的值。五種情況中大約四種情況下,var1和var2的值將相同。
P.S .:請忽略任何語法或邏輯錯誤。我嘗試瞭解我的計劃中發生了什麼,以瞭解實現更高效率的更好方法。
你就不能進行測試,以發現的? –
Method1似乎根據某個值執行兩個查詢之一。 '如果count(x)> 1'不是有效的PL/SQL,我知道你說我忽略了,但我不知道它要做什麼。 Method2似乎與Method1中的第一個查詢類似。這兩種'方法'與'計算時間'有什麼關係,不管它是什麼,都不清楚。 –
我假設你問是否用'='而不是'between'(如果有的話)節省了多餘的PL/SQL邏輯來決定要遵循哪個分支? –