zoukankan      html  css  js  c++  java
  • Full Hint

    FULL Hint可以提升优化器对指定表走全表扫描,但是FULL提示一次只能对一个表起作用

    SQL> select  ename,dept.deptno from emp,dept where emp.deptno=dept.deptno;

    已选择14行。


    执行计划
    ----------------------------------------------------------
    Plan hash value: 3074306753

    ------------------------------------------------------------------------------
    | Id  | Operation          | Name    | Rows  | Bytes | Cost (%CPU)| Time     |
    ------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT   |         |    14 |   168 |     3   (0)| 00:00:01 |
    |   1 |  NESTED LOOPS      |         |    14 |   168 |     3   (0)| 00:00:01 |
    |   2 |   TABLE ACCESS FULL| EMP     |    14 |   126 |     3   (0)| 00:00:01 |
    |*  3 |   INDEX UNIQUE SCAN| PK_DEPT |     1 |     3 |     0   (0)| 00:00:01 |
    ------------------------------------------------------------------------------

    SQL> select /*+ full(dept) */ ename,dept.deptno from emp,dept where emp.deptno=dept.deptno;

    已选择14行。


    执行计划
    ----------------------------------------------------------
    Plan hash value: 615168685

    ---------------------------------------------------------------------------
    | Id  | Operation          | Name | Rows  | Bytes | Cost (%CPU)| Time     |
    ---------------------------------------------------------------------------
    |   0 | SELECT STATEMENT   |      |    14 |   168 |     7  (15)| 00:00:01 |
    |*  1 |  HASH JOIN         |      |    14 |   168 |     7  (15)| 00:00:01 |
    |   2 |   TABLE ACCESS FULL| DEPT |     4 |    12 |     3   (0)| 00:00:01 |
    |   3 |   TABLE ACCESS FULL| EMP  |    14 |   126 |     3   (0)| 00:00:01 |

    SQL> select /*+ full(dept,emp) */ ename,dept.deptno from emp,dept where emp.deptno=dept.deptno;

    已选择14行。


    执行计划
    ----------------------------------------------------------
    Plan hash value: 3074306753

    ------------------------------------------------------------------------------
    | Id  | Operation          | Name    | Rows  | Bytes | Cost (%CPU)| Time     |
    ------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT   |         |    14 |   168 |     3   (0)| 00:00:01 |
    |   1 |  NESTED LOOPS      |         |    14 |   168 |     3   (0)| 00:00:01 |
    |   2 |   TABLE ACCESS FULL| EMP     |    14 |   126 |     3   (0)| 00:00:01 |
    |*  3 |   INDEX UNIQUE SCAN| PK_DEPT |     1 |     3 |     0   (0)| 00:00:01 |
    ------------------------------------------------------------------------------
    可见FULL提升失效,full只能对一个表指定全表扫描,如果想要对多个表执行全表扫描,使用多个full提升。

  • 相关阅读:
    获取服务结合随机算法
    服务发现
    使用第三方库来支持平滑重启
    简易配置中心Confd入手
    8、SQL基础整理(约束)
    7、SQL基础整理(子查询)
    6、SQL基础整理(日期时间数据类型,转换函数)
    5、SQL基础整理(字符串函数)
    4、SQL基础整理(规范函数)
    3、SQL基础整理(分组)
  • 原文地址:https://www.cnblogs.com/hehe520/p/6330657.html
Copyright © 2011-2022 走看看