zoukankan      html  css  js  c++  java
  • Informix IDS 11体系管理(918检修)认证指南,第8部门:面向管理员的SQL特性(5)

    优化器指令

    优化器指令的熏染

    优化器针对每个查询角力计较争论最优查询妄想。纵然优化器运用了少量统计信息,一些情况下依然无法做出最佳的决策。要重写优化器决策,您可以运用优化器指令来强迫优化器运用指定的查询妄想。

    优化器指令语法

    优化器指令往往针对以后查询的范围。要查抄指令的任务体式花式,您可以运用 SET EXPLAIN ON 获得查询妄想。要禁用指令,您可以在情况中设定 IFX_DIRECTIVE 0,也可以在 onconfig 中设置 DIRECTIVE 0
    优化器指令运用有效的正文指示符作为离开符。其中搜罗:

    • { 施展分析入手脱手离开符,} 施展分析终了离开符
    • /* 施展分析入手脱手离开符,而 */ 施展分析终了离开符
    • --(两个短划线)施展分析入手脱手离开符;无需运用终了离开符

    在离开符之后,每条指令的第一个字符必需是 号(加号)。优化器指令紧跟在 SELECTINSERTUPDATE 关头字反面。

    清单 11. 优化器指令示例

                        
    SELECT -- <Directive> 
    customer_name from customer where customer_num > 103
    


    指令搜罗以下几种范例:

    • 接见体例指令:这些指令描摹优化器搜刮表的体式花式。示例搜罗 INDEX <indexname>AVOID_FULLAVOID_INDEX <indexname>

    • 毗连挨次(Join-order)指令:毗连挨次指令 ORDERED 强迫优化器根据查询中运用的挨次运用表。

    • 毗连体例(Join-method)指令:毗连体例指令在嵌套循环和散列毗连之间终了选择。其中 USE_NLAVOID_NL 用于嵌套循环毗连,而 USE_HASHAVOID_HASH 用于散列毗连。

    • 优化目标(Optimization-goal)指令:优化目标指令指定查询机能的衡量体例。指令搜罗 ALL_ROWSFIRST_ROWSFIRST_ROWS 只前往第一个屏幕,其中显露查询前往的行。

    • 解释形式(Explain-mode)指令:解释形式指令用于测试和调试查询妄想,并将信息输入到 sqexplain.out 文件。EXPLAIN 基础上与 SET EXPLAIN ON 类似。AVOID_EXECUTE 仅仅实行查询妄想,而不实行查询本身。这一特性使您不必比及查询完成绩可以相识查询妄想可否吻合您的需求,在措置责罚年夜型表时等候查询完成将花消良多工夫。

    • 重写体例(Rewrite-method)指令:默许情况下,优化器不答应实行非嵌套的关系子查询。NESTED 关头字可克制运用非嵌套子查询重写查询。



    版权声明: 原创作品,答应转载,转载时请务必以超链接体例标明文章 原始来因 、作者信息和本声明。不然将追究法律责任。

  • 相关阅读:
    Matlab之rand(), randn(), randi()函数的使用方法
    matlab给图片插入说明文字
    matlab之find()函数
    excel根据数据源变化的动态图表
    高斯坐标
    (转)Mysql技术内幕InnoDB存储引擎-表&索引算法和锁
    (转)MySQL 插入数据时,中文乱码问题的解决
    (转)防止人为误操作MySQL数据库技巧一例
    (转)mysql explain详解
    (转)一个MySQL 5.7 分区表性能下降的案例分析
  • 原文地址:https://www.cnblogs.com/zgqjymx/p/1972983.html
Copyright © 2011-2022 走看看