-
ORACLE+SQL性能优化(全)中WHERE子句的连接顺序
资源介绍
WHERE子句中的连接顺序
ORACLE采用自下而上的顺序解析WHERE子句,根据这个原
理, 当在WHERE子句中有多个表联接时,WHERE子句中排
在最后的表应当是返回行数可能最少的表,有过滤条件的子
句应放在WHERE子句中的最后。
如:设从emp表查到的数据比较少或该表的过滤条件比较确定,能大大缩小查询范围,则将最具有选择性部分放在WHERE子句中的最后:
select * from emp e,dept d
where d.deptno >10 and e.deptno =30 ;
如果dept表返回的记录数较多的话,上面的查询语句会比下面的查询语句响应快得多。
select * from emp e,dept d
where e.deptno =30 and d.deptno >10 ;