從檢視oracle執行計畫開始

2021-08-30 20:34:21 字數 1156 閱讀 5278

考慮以下情況,

(1)如果你的資料表要管理3000萬個行用卡使用者資訊;

(2)如果你的資料表管理1000萬種商品;

乙個簡單的分頁查詢,你切實感受過它的效率嗎?如果使用者抱怨你的管理系統反應遲緩,除開架構、設計、還應該看看你的sql。

【oracle sql執行步驟】

sql語句的執行步驟

一條sql語句的處理過程要經過以下幾個步驟。

1語法分析分析語句的語法是否符合規範。

2語義分析檢查語句中涉及的所有資料庫物件是否存在,且使用者有相應的許可權。

3檢視轉換將涉及檢視的查詢語句轉換為相應的對基表查詢語句。

4表示式轉換將複雜的sql表示式轉換為較簡單的等效連線表示式。

5選擇優化器不同的優化器一般產生不同的「執行計畫」

6選擇連線方式oracle有三種連線方式,對多表連線oracle可選擇適當的連線方式。

7選擇連線順序對多表連線oracle選擇哪一對表先連線,選擇這兩表中哪個表做為源資料表。

8選擇資料的搜尋路徑根據以上條件選擇合適的資料搜尋路徑,如是選用全表搜尋還是利用索引或是其他的方式。

9執行「執行計畫

【優化器】

a. rule (基於規則) b. cost (基於成本)

【oracle 執行計畫】

檢視執行計畫:pl/sql:(1)sql 查詢視窗,按f5 (2)新建explain plan window

根據這個執行計畫可以調整sql,分析消耗的資源、時間,找到更優化的sql

如:(1)在資料表字段做運算,不能有效利用索引

(和諧社會不能出現不和諧的圖,這裡本來有自己做實驗的貼圖,只是有不該出現的東東,不得不去掉了)

(2)用<>,!=,is not null,is null,不能有效使用索引

(這裡一樣)

(3)預設的cbo情況下,!= 和 or的用法是一樣的,

(這裡一樣)

更多的差別可以在工作中留意看看,總會有收穫的

【sql優化】

Oracle 執行計畫檢視

第一種 explain plan命令 plsql devoloper中的f5鍵在內部也是呼叫的此命令 用法 依次執行以下語句 explain plan for 目標sql select from table dbms xplan.display 第二種 使用dbms xplan包 1 select ...

ORACLE檢視執行計畫

sql oracle home rdbms admin utlxplan.sql 表已建立。這個指令碼只是建立一張plan table表 sql oracle home sqlplus admin plustrce.sql 這個指令碼建立plustrace並授權 sql drop role plus...

oracle如何檢視執行計畫

1.在pl sql developer中得到乙個sql的執行計畫 輸入想要檢視執行計畫的目標sql,再按一下快捷鍵f5就可以了。2.explain plan 命令 explain plan for 目標sql select from table dbms xplan.display 3.dbms x...