zoukankan      html  css  js  c++  java
  • no_merge hint

    This is tested in 10gR2.

    SQL> select * from v$version;
    
    BANNER
    ------------------------------------------------
    Oracle Database 10g Enterprise Edition Release 1
    0.2.0.5.0 - 64bi
    
    PL/SQL Release 10.2.0.5.0 - Production
    CORE    10.2.0.5.0      Production
    TNS for Solaris: Version 10.2.0.5.0 - Production
    NLSRTL Version 10.2.0.5.0 - Production
    

      

    First, we create a view.

    SQL> create view v_dept as select deptno,dname from dept;
    
    View created.
    

      

    Then check SQL

    SQL> explain plan for select e.ename,d.dname from emp2 e, v_dept d where e.deptno=d.deptno;
    
    Explained.
    
    SQL> set linesize 180
    SQL> select * from table(dbms_xplan.display());
    
    PLAN_TABLE_OUTPUT
    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    Plan hash value: 827386235
    
    ----------------------------------------------------------------------------------------
    | Id  | Operation                    | Name    | Rows  | Bytes | Cost (%CPU)| Time     |
    ----------------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT             |         |    14 |   308 |     6  (17)| 00:00:01 |
    |   1 |  MERGE JOIN                  |         |    14 |   308 |     6  (17)| 00:00:01 |
    |   2 |   TABLE ACCESS BY INDEX ROWID| DEPT    |     4 |    52 |     2   (0)| 00:00:01 |
    |   3 |    INDEX FULL SCAN           | PK_DEPT |     4 |       |     1   (0)| 00:00:01 |
    |*  4 |   SORT JOIN                  |         |    14 |   126 |     4  (25)| 00:00:01 |
    |   5 |    TABLE ACCESS FULL         | EMP2    |    14 |   126 |     3   (0)| 00:00:01 |
    
    PLAN_TABLE_OUTPUT
    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    ----------------------------------------------------------------------------------------
    
    Predicate Information (identified by operation id):
    ---------------------------------------------------
    
       4 - access("E"."DEPTNO"="DEPTNO")
           filter("E"."DEPTNO"="DEPTNO")
    
    18 rows selected.
    

      

    use no_merge

    SQL>  explain plan for select /*+ no_merge(d) */ e.ename,d.dname from emp2 e, v_dept d where e.deptno=d.deptno;
    
    Explained.
    
    SQL> select * from table(dbms_xplan.display());
    
    PLAN_TABLE_OUTPUT
    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    Plan hash value: 2242990105
    
    ------------------------------------------------------------------------------
    | Id  | Operation           | Name   | Rows  | Bytes | Cost (%CPU)| Time     |
    ------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT    |        |    14 |   434 |     7  (15)| 00:00:01 |
    |*  1 |  HASH JOIN          |        |    14 |   434 |     7  (15)| 00:00:01 |
    |   2 |   VIEW              | V_DEPT |     4 |    88 |     3   (0)| 00:00:01 |
    |   3 |    TABLE ACCESS FULL| DEPT   |     4 |    52 |     3   (0)| 00:00:01 |
    |   4 |   TABLE ACCESS FULL | EMP2   |    14 |   126 |     3   (0)| 00:00:01 |
    ------------------------------------------------------------------------------
    
    PLAN_TABLE_OUTPUT
    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    
    Predicate Information (identified by operation id):
    ---------------------------------------------------
    
       1 - access("E"."DEPTNO"="D"."DEPTNO")
    
    16 rows selected.
    
    SQL>
    

      

  • 相关阅读:
    记录学生的日常
    el表达式与jstl的用法
    学习心得——袁康凯
    学习心得——刘文瑞
    学习心得——高婕
    学习心得——张坤鹏
    Mysql中文乱码 小强斋
    面试题>字符串匹配 小强斋
    选秀节目打分 小强斋
    面试题>字符串匹配 小强斋
  • 原文地址:https://www.cnblogs.com/kramer/p/3635421.html
Copyright © 2011-2022 走看看