执行计划是Oracle数据库用于执行语句的步骤组合。
每个步骤从数据库物理的检索数据或者为发出语句的用户准备数据行。
执行计划包括每个表的访问路径,以及连接表(连接顺序)的适当的连接方式。
DBMS_XPLAN的使用:select * from table(dbms_xplan.***);
这里给出了DBMS_XPLAN包中的五种方法的用途及数据源,具体使用及参数详见官方文档:
https://docs.oracle.com/en/database/oracle/oracle-database/12.2/arpls/DBMS_XPLAN.html
方法 | 使用 | 数据源 |
---|---|---|
DISPLAY | explain plan | plan_table |
DISPLAY_CURSOR | real plan | share pool 中的游标缓存 |
DISPLAY_AWR | history | AWR 仓库基表 WRH$_SQL_PLAN |
DISPLAY_SQLSET | SQL Tuning Set | SQL Set 视图 |
DISPLAY_SQL_PLAN_BASELINE | SQLPLAN Baseline | SQL 执行计划基准库 |
标量子查询例外,它在主SELECT的后面执行,却显示在上面。
两种说法,意思是一样的。关键是要多看、多思考、多练习、多总结。
示例:
执行顺序:3 - 4 - 2 - 1 - 0