日期:2014-05-16  浏览次数:20802 次

oracle执行计划
恕小弟才疏学浅,我始终弄不明白,该怎么看执行计划
以下的语句是我想看的语句
SELECT ename, job, sal, dname 
FROM emp, dept 
WHERE emp.deptno = dept.deptno 
AND NOT EXISTS 
( SELECT * 
FROM salgrade 
WHERE emp.sal BETWEEN losal AND hisal )

我选中后后,右击选择了执行计划,截图如下所示,

我想知道的是
一 cost和cardinality分别代表什么意思
二 cost列为什么会缺少2和5,6,7,没有连续
------解决方案--------------------
关键部分在于第一列,你都隐藏着的……

另外,决定执行效率的主要是cost一项
------解决方案--------------------
cost指耗费的代价~  你没展开完~  
看执行计划顺序,先右-->再上
------解决方案--------------------
你这是通过pl/sql取的计划,这个计划,只能大体看看,真正的执行计划要比这个详细的多。
cost:是每个步骤消耗的代价,也就是消耗系统资源的度量;
cardinality:是势或基数,这个指标还是比较关键的;
学会看计划的方法不是太难的事情,但要精通看计划不是一朝一夕的东西,需要大量的实践和基础知识,这也是数据库比较难的领域之一。
------解决方案--------------------
正在学习体系。执行计划还没学到。希望早点达到lz的进度。
------解决方案--------------------
先看看基本概念吧
http://blog.csdn.net/java3344520/article/details/5515497
------解决方案--------------------
来学习的