如果你知道要查看那一条SQL语句的执行计划,可以直接查询V$sql视图,比如: select a.SQL_ID, a.CHILD_NUMBER from v$sql a where a.SQL_TEXT like '%cm_cost where pk_cost%' 查询到这两字段之后,
直接通过一个dbms_xplan包的display_cursor函数就能查看这条SQL的执行计划,
如下所示:
select * from table(dbms_xplan.display_cursor('7ngvh44anxzx1', 0))
mehod 2:
set pagesize 20;
set linesize 100;
set autotrace on explain 只显示查询结果和执行计划
set autotrace on statistic 只显示查询结果统计信息
set autotrace on 显示前两者
set autotrace traceonly 不显示查询结果,只显示执行计划和统计信息
set autotrace off 关闭跟踪
set feedback on
set trimspool on
set pool c:/text.txt
set pool off;
之所以说这个视图很重要,是因为该视图中有一列是在awrsqrpt报告中没有的。这一列就是 filter_predicates列。
SELECT plan_hash_value,
TO_CHAR(RAWTOHEX(child_address)),
TO_NUMBER(child_number),
id,
LPAD(' ', DEPTH) || operation operation,
options,
object_owner,
object_name,
optimizer,
cost,
access_predicates,
filter_predicates
FROM V$SQL_PLAN
WHERE sql_id = 'bkcyk7bf380t6'
ORDER BY 1, 3, 2, 4;
重点关注optimizer列,filter_predicates列。
若是该sql不在shared pool中时,改为执行如下的sql:
set linesize 500
set pagesize 500
col plan_hash_value format 9999999999
col id format 999999
col operation format a30
col options format a15
col object_owner format a15
col object_name format a20
col optimizer format a15
col cost format 9999999999
col access_predicates format a15
col filter_predicates format a15
SELECT plan_hash_value,
id,
LPAD (' ', DEPTH) || operation operation,
options,
object_owner,
object_name,
optimizer,
cost,
access_predicates,
filter_predicates
FROM dba_hist_sql_plan
WHERE sql_id = 'fahv8x6ngrb50'
ORDER BY plan_hash_value, id
相关推荐
Oracle执行计划参数解释,Oracle SQL优化的基础是看懂Oracle的执行计划,本文当系统整理了Oracle执行计划里面的各种参数。
Oracle在执行一个SQL之前,首先需要看一下SQL的执行计划,然后在按照执行计划执行SQL,分析执行计划的工作是由优化器来执行的,在不同的条件下,一个SQL可能存在多条执行计划,但是在某个特定的时间点,特定的环境下...
Oralce 19c执行计划调优学习笔记 1_执行计划.pdf 2_explain plan for.pdf 3_dbms_xplan.display_cursor.pdf 4_执行计划顺序.pdf 5_直方图.pdf
1. 索引与执行计划 1 1.1. 索引入门 1 1.1.1. 索引是什么 1 1.1.2. 索引得分类 3 1.1.3. 基础语法 3 1.2. 执行计划 3 1.2.1. 什么是执行计划 3 1.2.2. 执行计划的作用 3 1.2.3. 执行计划的语法 4 1.2.4. 执行计划...
执行计划:一条查询语句在ORACLE中的执行过程或访问路径的描述。1:在PL/SQL下按F5查看执行计划。第三方工具toad等。很多人以为PL/SQL的执行计划只能看到基数、优化器、耗费等基本信息,其实这个可以在PL/SQL工具里面...
hive执行计划可视化工具
通过分析SQL语句的执行计划优化SQL,F5执行计划如何优化
Kingbase执行计划详解
ORACLE提供了在SQL中 使用HINTS来引导优化器产生我们想要的执行计划的能力。这在多表连接、复杂查询中特别有效。HINTS的类型很多,可以设置优化器目标,可以指定表连接的顺序,可以指定使用哪个表的哪个索引等等,...
怎么进行autotrace进行查看执行计划
基于规则的查询,数据库根据表和索引等定义信息,按照一定的规则来产生执行计划;基于代价的 查询,数据库根据搜集的表和索引的数据的统计信息综合来决定选取一个数据库认为最优的执行计划。基于规则的模式下,...
Oracle可能必须实现许多步骤。这些步骤中的每一步可能是从数据库中物理检索数据行,或者用某种方法准备数据行,供发出语句的...本文先从分析树型执行计划开始介绍,然后介绍如何得到执行计划,再介绍如何分析执行计划。
Oracle SQL执行计划分析器功能的创建3步曲: 1 首先,编译XYG_ALD_SESS_PKG的Package头。 (XYG_ALD_SESS_PKG.sql) 2 接着要建立好下面的4个视图对象。因为XYG_ALD_SESS_PKG包体会用到。(View Create Script v...
自己动手总结出来的所有的东西都有例子,执行计划的分析,访问路径分析,执行顺序分析方法,执行计划的解读方法,刚近公司,带我的人要我做的,也是想帮我好好理解,现在拿来分享下
SQLSERVER执行计划 解剖 SQL SERVER 执行计划
执行计划表示了SQL语句执行顺序与方法。 执行计划的存储方式: 一但产生执行计划。这个计划就会和sql语句一起存储在library cache中。sql语句按照hash的算法,产生hash 值,这里,我们可以把hash值当做一个PK值,...
什么是执行计划,如何访问数据,执行计划层次关系、例子解说等几个方面,全面介绍oracle执行计划说明,并进一步给出优化建议等相关内容。
mysql执行计划简介
Mysql 执行计划解读,这个对SQL优化非常有作用的,也是必备技能了
针对Oracle性能的优化,了解sql语句的执行计划,对性能优化起到很好的指导作用!