爆料這11個優化技巧「oracle sql優化的幾種方法」

我們使用oracle資料庫開發的過程當中,我們會發現注重sql優化的人,同樣一個系統,性能快了很多。下面介紹一些常用的sql優化機巧和注重點。

1、表盡量使用別名,欄位盡量使用別名.欄位名,這樣子,可以減少oracle資料庫解析欄位名。而且把不需要的欄位名剔除掉,只保留有用的欄位名,不要一直使用 select *。

2、關聯查詢時,選擇好主表。oracle解析器對from 後面的表的解析是從右到左的,所以把數據量較小的表作為主表,然後和其他表進行關聯,假如存在三個以下表,把同時交叉關聯的表作為主表,提高查詢效率。

3、where 條件後面的的條件解析是從下向上,從後先前解析執行的,所以可以把過濾數據量較多的條件放在最後面。

4、多利用表中數據行的rowid,rowid代表著表中數據存在的物理地址。例如刪除重複記錄的時候,可以根據rowid進行刪除。

5、減少對錶的查詢,特別在子查詢中,能盡量少重複訪問表,就減少。

6、避免使用耗資源的操作,如distinct、Union、minus等這種需要全表查詢的操作。

7、優化分組group by ,對group by欄位要進行添加鎖引,如果分組當中含有查詢條件,要改寫為where條件進行過濾後,再進行分組,而不是直接進行 having 條件。

8、用EXISTS替代IN、用NOT EXISTS替代 NOT IN,因為 not in是低效的,它必須對該欄位的全部數據進行排序。

9、要合理利用索引欄位提高查詢效率。特別是常用的關聯欄位可以增加索引,主鍵、或者某些唯一欄位。

10、利用>=替代>,因為>=可以直接定位到=的位置,而大於必須先定位位置,然後再查詢下一個數據。耗時不一樣。

11、最後一個一定要學會查看執行計劃,查看相關查詢條件是否進入索引,找出問題所在,定位問題。

歡迎大家討論補充

oracle中SQL常見的優化的方法

原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/280146.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
投稿專員的頭像投稿專員
上一篇 2024-12-20 18:54
下一篇 2024-12-20 18:54

相關推薦

發表回復

登錄後才能評論