当前位置:首页 >知识 >简介Oracle INDEX提示 Oracle还是简介比较常用的

简介Oracle INDEX提示 Oracle还是简介比较常用的

2024-07-01 08:45:24 [百科] 来源:避面尹邢网

简介Oracle INDEX提示

作者:佚名 数据库 Oracle 这里介绍如果你只为某个表指定了Oracle INDEX提示(指示存取路径在该表上使用索引),简介优化器需要来决定其它应该使用的简介访问路径和相应的连接方法。

Oracle还是简介比较常用的,于是简介我研究了一下Oracle INDEX提示,当使用hints时,简介在某些情况下,简介为了确保让优化器产生***的简介执行计划,我们可能指定全套的简介hints,在这里拿出来和大家分享一下,简介希望对大家有用。简介

例如,简介如果有一个复杂的简介查询,包含多个表连接,简介如果你只为某个表指定了Oracle INDEX提示(指示存取路径在该表上使用索引),简介优化器需要来决定其它应该使用的简介访问路径和相应的连接方法。因此,即使你给出了一个Oracle INDEX提示,优化器可能觉得没有必要使用该提示。这是由于我们让优化器选择了其它连接方法和存取路径,而基于这些连接方法和存取路径,优化器认为用户给出的Oracle INDEX提示无用。为了防止这种情况,我们要使用全套的hints,如:不但指定要使用的索引,而且也指定连接的方法与连接的顺序等。

简介Oracle INDEX提示 Oracle还是简介比较常用的

下面是一个使用全套hints的例子,ORDERED提示指出了连接的顺序,而且为不同的表指定了连接方法:

简介Oracle INDEX提示 Oracle还是简介比较常用的

  1. SELECT /*+ ORDERED INDEX (b, jl_br_balances_n1) USE_NL (j b)  
  2. USE_NL (glcc glf) USE_MERGE (gp gsb) */  
  3. b.application_id, b.set_of_books_id ,  
  4. b.personnel_id, p.vendor_id Personnel,  
  5. p.segment1 PersonnelNumber, p.vendor_name Name  
  6. FROM jl_br_journals j, jl_br_balances b,  
  7. gl_code_combinations glcc, fnd_flex_values_vl glf,  
  8. gl_periods gp, gl_sets_of_books gsb, po_vendors p  
  9. WHERE ... 

指示优化器的方法与目标的hints:

简介Oracle INDEX提示 Oracle还是简介比较常用的

  1. ALL_ROWS -- 基于代价的优化器,以吞吐量为目标  
  2. FIRST_ROWS(n) -- 基于代价的优化器,以响应时间为目标  
  3. CHOOSE -- 根据是否有统计信息,选择不同的优化器  
  4. RULE -- 使用基于规则的优化器 

例子:

  1. SELECT /*+ FIRST_ROWS(10) */ employee_id, last_name, salary, job_id  
  2. FROM employees  
  3. WHERE department_id = 20;  
  4. SELECT /*+ CHOOSE */ employee_id, last_name, salary, job_id  
  5. FROM employees  
  6. WHERE employee_id = 7566;  
  7. SELECT /*+ RULE */ employee_id, last_name, salary, job_id  
  8. FROM employees  
  9. WHERE employee_id = 7566; 

【编辑推荐】

  1. 讨论Oracle文档学习经验
  2. 如何了解Oracle生成执行计划
  3. 详细谈论Oracle表连接
  4. 分析Oracle索引扫描四大类
  5. 高手闲谈Oracle索引扫描
责任编辑:佚名 来源: 51cto.com Oracle INDEX提示

(责任编辑:焦点)

    推荐文章
    热点阅读