|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
DBaaS系统其实具有更大的市场机遇:像其他云服务一样,DBaaS意味着更短的销售周期,更少的启动费用,持续不断的收入,也意味着比之前更多的客户。oracle|功能|优化
27.基本表的选择
基本表(DrivingTable)是指被开始会见的表(一般以全表扫描的体例被会见).依据优化器的分歧,SQL语句中基本表的选择是纷歧样的.
假如你利用的是CBO(COSTBASEDOPTIMIZER),优化器会反省SQL语句中的每一个表的物理巨细,索引的形态,然后选用消费最低的实行路径.
假如你用RBO(RULEBASEDOPTIMIZER),而且一切的毗连前提都有索引对应,在这类情形下,基本表就是FROM子句中列在最初的谁人表.
举例:
SELECTA.NAME,B.MANAGER
FROM WORKERA,
LODGINGB
WHERE A.LODGING=B.LODING;
因为LODGING表的LODING列上有一个索引,并且WORKER表中没有比拟较的索引,WORKER表将被作为查询中的基本表.
28.多个同等的索引
当SQL语句的实行路径可使用散布在多个表上的多个索引时,ORACLE会同时利用多个索引并在运转时对它们的纪录举行兼并,检索出仅对全体索引无效的纪录.
在ORACLE选择实行路径时,独一性索引的品级高于非独一性索引.但是这个划定规矩只要
当WHERE子句中索引列和常量对照才无效.假如索引列和其他表的索引类比拟较.这类子句在优化器中的品级长短常低的.
假如分歧表中两个想一律级的索引将被援用,FROM子句中表的按次将决意哪一个会被领先利用.FROM子句中最初的表的索引将有最高的优先级.
假如不异表中两个想一律级的索引将被援用,WHERE子句中开始被援用的索引将有最高的优先级.
举例:
DEPTNO上有一个非独一性索引,EMP_CAT也有一个非独一性索引.
SELECTENAME,
FROMEMP
WHEREDEPT_NO=20
ANDEMP_CAT=‘A’;
这里,DEPTNO索引将被开始检索,然后同EMP_CAT索引检索出的纪录举行兼并.实行路径以下:
TABLEACCESSBYROWIDONEMP
AND-EQUAL
INDEXRANGESCANONDEPT_IDX
INDEXRANGESCANONCAT_IDX
29.等式对照和局限对照
当WHERE子句中有索引列,ORACLE不克不及兼并它们,ORACLE将用局限对照.
举例:
DEPTNO上有一个非独一性索引,EMP_CAT也有一个非独一性索引.
SELECTENAME
FROMEMP
WHEREDEPTNO>20
ANDEMP_CAT=‘A’;
这里只要EMP_CAT索引被用到,然后一切的纪录将逐条与DEPTNO前提举行对照.实行路径以下:
TABLEACCESSBYROWIDONEMP
INDEXRANGESCANONCAT_IDX
30.不明白的索引品级
当ORACLE没法判别索引的品级上下不同,优化器将只利用一个索引,它就是在WHERE子句中被列在最后面的.
举例:
DEPTNO上有一个非独一性索引,EMP_CAT也有一个非独一性索引.
SELECTENAME
FROMEMP
WHEREDEPTNO>20
ANDEMP_CAT>‘A’;
这里,ORACLE只用到了DEPT_NO索引.实行路径以下:
TABLEACCESSBYROWIDONEMP
INDEXRANGESCANONDEPT_IDX
译者按:
我们来试一下以下这类情形:
SQL>selectindex_name,uniquenessfromuser_indexeswheretable_name=EMP;
INDEX_NAMEUNIQUENES
---------------------------------------
EMPNOUNIQUE
EMPTYPENONUNIQUE
SQL>select*fromempwhereempno>=2andemp_type=A;
norowsselected
ExecutionPlan
----------------------------------------------------------
0SELECTSTATEMENTOptimizer=CHOOSE
10TABLEACCESS(BYINDEXROWID)OFEMP
21INDEX(RANGESCAN)OFEMPTYPE(NON-UNIQUE)
固然EMPNO是独一性索引,可是因为它所做的是局限对照,品级要比非独一性索引的等式对照低!
MySQL部署迅速,因此移植过程不会导致生产中断。而且,较短的学习曲线可以让你的系统管理员迅速掌握它的运行和维护。而且,MySQL的易于维护和管理意味着目前的职员可以处理目前的工作。 |
|