1. 程式人生 > >oracle 效能優化操作五:儘量去掉 ""

oracle 效能優化操作五:儘量去掉 ""

oracle 效能優化操作五:儘量去掉 "<>"

儘量去掉 "<>",避免全表掃描,如果資料是列舉值,且取值範圍固定,則修改為"OR"方式。

例:

<span style="font-size:18px;">UPDATE SERVICEINFO SET STATE=0 WHERE STATE<>0;</span>

以上語句由於其中包含了"<>",執行計劃中用了全表掃描(TABLE ACCESS FULL),沒有用到state欄位上的索引。

實際應用中,由於業務邏輯的限制,欄位state為列舉值,只能等於0,1或2,而且,值等於=1,2的很少。

因此可以去掉"<>",利用索引來提高效率。

修改為:

<span style="font-size:18px;">UPDATE SERVICEINFO SET STATE=0  WHERE STATE = 1 OR STATE = 2 ;</span>

進一步的修改可以參考“oracle 效能優化操作四”。