整理工作中用到的Hint,不定时更新,Hint是oracle早期因为oracle优化器还不是很完善加上去的

,可以辅助oracle优化器

1、/*+ result_cache */

设置缓存,特殊业务场景才可以使用

2、/*+ connect_by_filtering */

强制使用联合型的关联型(CONNECT BY WITH FILTERING)

,ps:详情

见:https://smilenicky.blog.csdn.net/article/details/89604262

3、/*+ no_unnset */

双重否定表示肯定,即让子查询展开,让它嵌套(nest)在里面

4、/*+ index(表别名 索引名) */

强制索引,有时候可以使用,不过有时候可以关了基数反馈机制

5、/*+ INDEX_FFS(表别名 索引名) */

对指定的表执行快速全索引扫描,而不是全表扫描的办法

6、/*+ INDEX_DESC(表别名 索引名 ) */

表明对表选择索引降序的扫描方法

7、/*+ INDEX_ASC(表别名 索引名) */

表明对表选择索引升序的扫描方法

8、/*+ INDEX_COMBINE */

为指定表选择位图访问路经,如果INDEX_COMBINE中没有提供作为参数的索引,将选择出位图索引的布

尔组合方式

9、/*+ INDEX_JOIN(表别名 索引名) */

提示明确命令优化器使用索引作为访问路径

10、/*+ ADD_EQUAL 表别名 索引名1,索引名2,... */

提示明确进行执行规划的选择,将几个单列索引的扫描合起来

eg:

SELECT /*+INDEX_FFS(e IN_ENAME,IN_DEPTNO)*/
*
FROM emp e
WHERE e.ename = 'CLERK'
AND e.deptno = '20';

11、/*+ ordered use_nl(dept) */

强制使用联合型的关联型(NL),将指定表与嵌套的连接的行源进行连接,并把指定表作为内部表

12、/*+ ALL_ROWS */

表明对语句块选择基于开销的优化方法,并获得最佳吞吐量,使资源消耗最小化

13、/+FIRST_ROWS/

表明对语句块选择基于开销的优化方法,并获得最佳响应时间,使资源消耗最小化

14、/*+ CHOOSE */

表明如果数据字典中有访问表的统计信息,将基于开销的优化方法,并获得最佳的吞吐量;

表明如果数据字典中没有访问表的统计信息,将基于规则开销的优化方法;

15、/*+ RULE */

表明对语句块选择基于规则的优化方法

16、/*+ FULL(TABLE) */

表明对表选择全局扫描的方法

17、/*+ ROWID(TABLE) */

提示明确表明对指定表根据ROWID进行访问

18、/*+ USE_HASH(TABLE) */

将指定的表与其他行源通过哈希连接方式连接起来

Oracle Hint用法整理笔记的更多相关文章

  1. Oracle Hint 用法

    正确的语法是: select /*+ index(x idx_t) */ * from t x where x.object_id=123 /*+    */ 和注释很像,比注释多了一个“+”,这就是 ...

  2. Oracle Hint用法总结

    1. /*+ALL_ROWS*/ 表明对语句块选择基于开销的优化方法,并获得最佳吞吐量,使资源消耗最小化. 例如: SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_I ...

  3. PLSQL_PLSQL Hint用法总结(概念)

    2014-06-20 Created By BaoXinjian

  4. Spring JdbcTemplate用法整理

    Spring JdbcTemplate用法整理: xml: <?xml version="1.0" encoding="UTF-8"?> <b ...

  5. /*+ hint*/用法,该如何解决

    /*+ use_hash(b, a)*/用法SELECT /*+ use_hash(b, a)*/  1,  NVL(b.AgentWorkGroup, ' '),  ................ ...

  6. SQL优化过程中常见Oracle HINT

    在SQL语句优化过程中,我们经常会用到hint,现总结一下在SQL优化过程中常见Oracle HINT的用法: 1. /*+ALL_ROWS*/ 表明对语句块选择基于开销的优化方法,并获得最佳吞吐量, ...

  7. Oracle hint手动优化

    例子 select/*+FULL(fortest)*/ * from fortest where id = 2000000 //使用0.70s时间 select* from fortest where ...

  8. Oracle define用法简介教程

    目录 1.define常量用法 2.&和&&符号用法 继上一篇博客Oracle绑定变量学习笔记,再写一篇define变量的简单教程 @ 1.define常量用法 注意:defi ...

  9. 【DBAplus】SQL优化:一篇文章说清楚Oracle Hint的正确使用姿势

    原创 2016-09-12 韩锋  作者介绍 韩锋,宜信技术研发中心数据库架构师.精通多种关系型数据库,曾任职于当当网.TOM在线等公司,曾任多家公司首席DBA.数据库架构师等职,多年一线数据库架构. ...

随机推荐

  1. python3之本地文件模拟登录

    本地文件模拟登录 user.txt文本文件数据格式: username:password #coding:utf-8 #读取数据 userFile = open("user.txt" ...

  2. Restful API接口规范

    1. 域名 应该尽量将API部署在专用域名之下. https://api.example.com 如果确定API很简单,不会有进一步扩展,可以考虑放在主域名下. https://example.org ...

  3. SpringBoot结合策略模式实战套路

    1. SpringBoot结合策略模式实战套路 1.1. 前言 我们都知道设计模式好,可以让我们的代码更具可读性,扩展性,易于维护,但大部分程序猿一开始都学过至少一遍设计模式吧,实战中不知用到了几成. ...

  4. 统计代码测试覆盖率-Python

    衡量Unit Test(单元测试)是否充分, 覆盖率是一个必要指标, 是检验单元测试的重要依据, 这里针对python unittest 的单元测试覆盖率coverage进行分享. 来自官方的解释: ...

  5. day 36

    目录 pymysql操作mysql 安装 连接 增 删 改 查 索引 为什么使用索引以及索引的作用 类比 索引的本质 索引的底层原理 索引的种类(重点) 主键索引 唯一索引 普通索引 索引的创建 主键 ...

  6. vlan技术简单了解

    VLAN(虚拟局域网)是对连接到的第二层交换机端口的网络用户的逻辑分段,不受网络用户的物理位置限制而根据用户需求进行网络分段.一个VLAN可以在一个交换机或者跨交换机实现.VLAN可以根据网络用户的位 ...

  7. toString的本质 以及String.valueOf()

    Object可以用toString转为字符串. Object.toString(); 但char[]不行,得用valueOf. String.valueOf(char[]); 如果用toString, ...

  8. 3.1 Spark概述

    一.Spark简介 1.Spark的特点 特点1:运行速度快(内存计算,循环数据流.有向无环图设计机制) 把所有针对数据集的操作转换成一张有向无环图,整个执行引擎调度都是基于这个有向无环图,对这个有向 ...

  9. 04发送请求,将值赋给data--动态传递参数

    03==>发送青丘,将值赋给data. 注意:赋值使用的是 _this.setData({ }) 是以冒号的形式赋值, 提前保存好this data: { arrlistdata:[], }, ...

  10. idea中的插件,可以快速将类中的属性转换成Json字符串

    当我们想要测试接口的时候,难免会根据一个类,一个一个的写json数据,当属性比较少时还行,但当属性多的时候就比较麻烦了, 为了解决这个问题,我们可以安装第三方的插件来快速生成json字符串. 步骤如下 ...