促進最佳sql 的一些提示
*在I/O 的觀點來看使用索引沒有意義時鼓勵進行全表掃描
如果索引掃描訪問的塊比全表掃描的多時,使用全表掃描非常有效
*如果sql包含了子查詢,則優化它們.事實上,應首先優化它們.如果子查詢不能很好的執行,主查詢也不能很好的執行.如果一個連接將提供子查詢的功能,則在試圖使用子查詢方法之前,應首先試試連接方法.請注意關聯子查詢,因為它們的代價很高且cpu使用頻繁.
*在sql語句的where 條件中使用 not exists 代替 not in
*使用有前導字符的like 運算符來代替substr函數.有前導字符(如在被比較值中的'A%')的 like運算符將使用索引.
substr函數將使索引無效,除非數據庫的版本時Oracle8i 並且已經建立了一個基於函數的索引
--未完--