explain for 的簡單使用
autotrace 貌似有點bug,推薦用explain for:
要使用EXPLAIN首先要執行相應的指令碼,建立出Explain_plan表。
具體指令碼執行如下:
$ORACLE_HOME/rdbms/admin/utlxplan.sql (UNIX) 該指令碼後會生成一個表這個程式會建立一個名為plan_table的表。
常規使用語法:
explain PLAN [ SET STATEMENT_ID [=] < string literal > ] [ INTO < table_name > ] FOR < sql_statement > |
其中:
STATEMENT_ID:是一個唯一的字串,把當前執行計劃與儲存在同一PLAN中的其它執行計劃區別開來。
TABLE_NAME:是plan表名,它結構如前所示,你可以任意設定這個名稱。
SQL_STATEMENT:是真正的SQL語句。 比如: SQL>explain plan set statement_id='T_TEST' for select * from t_test; SQL> Explained
執行下面語句可以查詢到執行計劃
SQL>SELECT A.OPERATION,OPTIONS,OBJECT_NAME,OBJECT_TYPE,ID,PARENT_ID 2 FROM PLAN_TABLE a 3 WHERE STATEMENT_ID='T_TEST' 4 ORDER BY Id; |
也可以用這句話 select * from table(dbms_xplan.display); 可以把所有PLAN_TABLE裡的資料羅列出來。
[@more@]來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8432937/viewspace-1029416/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL中explain語句的使用MySqlAI
- Kdevelop的簡單使用和簡單除錯dev除錯
- postman的簡單使用Postman
- OD的簡單使用
- RocketMQ的簡單使用MQ
- docker的簡單使用Docker
- SXSSFWorkbook的簡單使用
- peewee的簡單使用
- LayUi的簡單使用UI
- Vue簡單的使用Vue
- uuid的簡單使用UI
- git的簡單使用Git
- RecyclerView的簡單使用View
- ConcurrentLinkedQueue的簡單使用
- Handler的簡單使用
- Flatbuffer的簡單使用
- Mackdown簡單的使用教程Mac
- shell script的簡單使用
- vue框架的簡單使用Vue框架
- 協程的簡單使用
- matplotlib簡單的使用(二)
- Maven 私服的簡單使用Maven
- 使用tensorboard的簡單方法ORB
- react hooks 的簡單使用ReactHook
- BootStrapValidate 簡單使用boot
- GCDAsyncSocket 簡單使用GC
- gorm 簡單使用GoORM
- JPTabBar簡單使用tabBar
- Drozer簡單使用
- jq 簡單使用
- git簡單使用Git
- OpenFeign簡單使用
- LinqPad簡單使用
- Badger簡單使用
- 簡單使用 rocketmqMQ
- kvm簡單使用
- Quartz 簡單使用quartz
- kustomize簡單使用
- apijson簡單使用APIJSON