数据库执行计划 什么是sql执行计划
其实数据库执行计划的问题并不复杂,但是又很多的朋友都不太了解什么是sql执行计划,因此呢,今天小编就来为大家分享数据库执行计划的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!
如何查看数据库执行计划
一、通过PL/SQL Dev工具
1、直接File->New->Explain Plan Window,在窗口中执行sql可以查看计划结果。其中,Cost表示cpu的消耗,单位为n%,Cardinality表示执行的行数,等价Rows。
2、先执行 EXPLAIN PLAN FOR select* from tableA where paraA=1,再 select* from table(DBMS_XPLAN.DISPLAY)便可以看到oracle的执行计划了,看到的结果和1中的一样,所以使用工具的时候推荐使用1方法。
注意:PL/SQL Dev工具的Command window中不支持set autotrance on的命令。还有使用工具方法查看计划看到的信息不全,有些时候我们需要sqlplus的支持。
二、通过sqlplus
db2数据库怎么查看执行计划
打开PL/SQL Developer软件,请确保plsql能够成功连接到一个oracle数据库。
在PL/SQL Developer中写好一段SQL代码,按F5,或者点击“执行执行计划”图标,PL/SQL Developer会自动打开执行计划窗口,显示该SQL的执行计划。
可以看到窗口上方是sql语句,下方显示执行计划表格。表格的列主要包含描述、用户、对象、成本花费、IO开销等,表格,当然表格列还可以自定义。表格的行包含了查询逻辑的执行顺序和各个步骤信息。
执行计划表格内容的执行顺序是:按照从左至右,从上至下的步骤执行,具体是指执行计划按照层次逐步缩进,从左至右看,缩进最多的那一步最先执行,如果缩进量相同,则按照从上而下的方法判断执行顺序。
通过查看执行计划表格的cost列,即成本花费能够知道哪个步骤花费的成本高,通过查看执行计划表格的行中的objectname列,能够知道是否使用到表中的索引
什么是SQL执行计划
SQL执行计划指的是查看一条SQL语句在数据库中实际执行的时候,一步步的分别都做了什么,具体数据库查看执行计划的操作步骤如下:
1、首先,打开一个的sql server的数据库管理界面当中。
2、然后选中的要执行的sql语句。
3、点击了的菜单中的查询的菜单。
4、点击了查询菜单之后,弹出了下拉菜单选中为显示估计的执行计划的选项。
5、然后点击执行计划。
6、可以看到是相关的执行计划的相关的数据。
什么是sql执行计划
SQL执行计划,就是一条SQL语句,在数据库中实际执行的时候,一步步的分别都做了什么。
执行计划是由各类操作符组成的一颗树,也就是排序好的操作符的展现形式,从内到外依次执行
一般的执行计划格式为
OP1
OP2
OP3
OP4
OP5
OP6
OP7
OP8
缩进越多的越先执行,同样缩进的上面的先执行,下面的后执行,上下的优先级高于内外
OP3->OP4->OP2->OP7->OP8->OP6->OPT5->OP1
扩展资料
同一个SQL在共享池中有多个不同的执行计划被称为版本(VERSION)。即使是使用了良好的绑定变量,但仍然有可能会出现多个不同的执行计划,即VERSION_COUNT比较大。
这个字段也表示有多少个child
cursors在一个parent下面。
由于配置参数、执行环境(用户)等不同,即使一个相同的sql语句,在执行的过程中,会出现各种各样的执行计划。每个执行计划的执行,也就产生了一个child
cursor。version_count就表示这个意义。
可以通过以下方法来确定是否真的具有那么多的version_count:
ALTER
SESSION
SET
EVENTS
'immediate
trace
name
LIBRARY_CACHE
level
4';
来dump出内存来确信改sql是否具有那么多的version,也可以通过查询v$sql
(可以通过hash_value跟v$sqlarea联合)来看child_number的个数
好了,关于数据库执行计划和什么是sql执行计划的问题到这里结束啦,希望可以解决您的问题哈!