+ -
当前位置:首页 → 问答吧 → 这种SQL能做谓词推进吗?

这种SQL能做谓词推进吗?

时间:2011-09-07

来源:互联网

CREATE VIEW emp_union_view (e_no, e_name, job, mgr, hiredate, sal, comm, deptno)
AS SELECT empno, ename, job, mgr, hiredate, sal, comm, deptno FROM regular_emp
UNION ALL
SELECT empno, ename, job, manager, hiredate, salary, comm, deptno  FROM temporary_emp;

SELECT e_no, e_name, mgr, sal FROM emp_union_view WHERE deptno = 20;

但是看执行计划,还是有VIEW出现,没有能够MERGE。有朋友说可以使用谓词推进,但是我记得谓词推进是针对于子查询的,不知道针对视图的谓词推进是怎么写

作者: itpub.itpub   发布时间: 2011-09-07

谁说 谓词推进是针对子查询的。谓词推进是说一个视图/子查询不能被合并(比如你这里的UNION ALL就会限制VIEW MERGE) ,如果视图/子查询上面有谓词过滤 就可以把过滤条件放入 视图/子查询 里面

作者: lbs1988   发布时间: 2011-09-07

热门下载

更多