oracle語句常見優(yōu)化方法

2017-07-28    分類: 網(wǎng)站建設

我們使用oracle數(shù)據(jù)庫網(wǎng)站制作的過程當中,我們會發(fā)現(xiàn)注重sql優(yōu)化的人,同樣一個系統(tǒng),性能快了很多。下面介紹一些常用的sql優(yōu)化機巧和注重點。

1、表盡量使用別名,字段盡量使用別名.字段名,這樣子,可以減少oracle數(shù)據(jù)庫解析字段名。而且把不需要的字段名剔除掉,只保留有用的字段名,不要一直使用 select *。

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

3、where 條件后面的的條件解析是從下向上,從后先前解析執(zhí)行的,所以可以把過濾數(shù)據(jù)量較多的條件放在最后面。

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

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

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

7、優(yōu)化分組group by ,對group by字段要進行添加鎖引,如果分組當中含有查詢條件,要改寫為where條件進行過濾后,再進行分組,而不是直接進行 having 條件。

8、用EXISTS替代IN、用NOT EXISTS替代 NOT IN,因為 not in是低效的,它必須對該字段的全部數(shù)據(jù)進行排序。

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

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

11、最后一個一定要學會查看執(zhí)行計劃,查看相關查詢條件是否進入索引,找出速。

新聞標題:oracle語句常見優(yōu)化方法
新聞來源:http://www.bm7419.com/news36/75786.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供ChatGPTApp開發(fā)、網(wǎng)站維護微信公眾號網(wǎng)站制作、品牌網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

h5響應式網(wǎng)站建設