- August 12–22: Online Training (EU shift)
- Enrollment
- FOSDEM Impressions
- June 8–18: Online Training (US shift)
- Non-monetary micro sponsoring
- November 11-12 in Frankfurt am Main
- Online-Training in July and August
- Oracle + PostgreSQL
- Party time
- PostgreSQL Performance Event
- SQL Server Performance Kurs in Stuttgart
- SQL Server performance training in London
- Shipping Terms
- The two top performance problems caused by ORM tools
- Top Tweets January 2013
- Training Survey
- Training and Conference Dates
- Use The Index, Luke
- Ask
- Consulting
2011-03-15Getting an Oracle Execution Plan
Viewing an execution plan in the Oracle database involves two steps:
explain plan for — saves the execution plan in the
PLAN_TABLE.Format and display the execution plan.
Creating and Saving an Execution Plan
To create an execution plan, you just have to prefix the respective SQL statement with explain plan for:
EXPLAIN PLAN FOR select * from dual;
You can execute the explain plan for command in any development environment or SQL*Plus. It will, however, not show the plan but save it into a table named PLAN_TABLE. Starting with release 10g, this table is automatically available as a global temporary table. With previous releases, you have to create it in each schema as needed. Ask your database administrator to create it for you or to provide the create table statement from the Oracle database installation:
$ORACLE_HOME/rdbms/admin/utlxplan.sql
You can execute this statement in any schema you like to create the PLAN_TABLE in this schema.
With our online courses, you can learn all about SQL performance during summertime!
Showing Execution Plans
The package DBMS_XPLAN was introduced with release 9iR2 and can format and display execution plans from the PLAN_TABLE. The following example shows how to display the last execution plan that was explained in the current database session:
select * from table(dbms_xplan.display);
Once again, if that statement doesn’t work out of the box, you should ask your DBA for assistance.
The query will display the execution plan as shown in the book:
-------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)|. -------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1 | 2 | 2 (0)|. | 1 | TABLE ACCESS FULL| DUAL | 1 | 2 | 2 (0)|. --------------------------------------------------------------
Some of the columns shown in this execution plan were removed in the book for a better fit on the page.
Stay connected:
RSS Feed
Like on Facebook
Follow me on Twitter
Share at Google+
RSS FeedFlattr this! Follow me on TwitterShare at Google+Like on Facebook