程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> oracle性能優化操作十:分解復雜查詢,用常量代替變量

oracle性能優化操作十:分解復雜查詢,用常量代替變量

編輯:Oracle教程

oracle性能優化操作十:分解復雜查詢,用常量代替變量


對於復雜的Where條件組合,Where中含有多個帶索引的字段,考慮用IF語句分情況進行討論;

同時,去掉不必要的外來參數條件,減低復雜度,以便在不同情況下用不同字段上的索引。

繼續“oracle 性能優化操作九”的例子,對於包含

Where (DisposalCourseFlag < v_DisPosalCourseFlag) or (v_DisPosalCourseFlag is null) and ....的查詢,

(這裡v_DisPosalCourseFlag為一個輸入變量,取值范圍可能為[NULL,0,1,2,3,4,5,6,7]),可以考慮分情況用IF語句進行討論。

類似:

IF v_DisPosalCourseFlag =1 THEN

Where DisposalCourseFlag = 1 and ....

ELSIF v_DisPosalCourseFlag =2 THEN

Where DisposalCourseFlag = 2 and .... 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved