博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
撰写oracle-sql-hint的注意事项
阅读量:6664 次
发布时间:2019-06-25

本文共 524 字,大约阅读时间需要 1 分钟。

有时候Oracle自动生成的执行计划是“笨”的,我们给一些提示信息,让Oracle自动找到“聪明”的执行计划,这就是"hint"。

初学者,甚至专业人员,会遇到这样的疑惑:hint不起作用?

因为Oracle对于错误的hint是自动忽略,所以我们要特别注意hint的语法(暂列一条):如果在SQL中使用了别名,那么Hint中也要使用别名。

样例1:

 
  1. -- 使用索引,t2为别名,PK_My_Table2为索引名  
  2. INDEX(t2 PK_My_Table2)  

样例2:
 

 
  1. -- 要关联t和t1 (其中t和t1为别名)  
  2. USE_MERGE(t,t1)  
  3.  
  4. -- 不要关联t1和t2 (其中t1和t2为别名)  
  5. NO_USE_MERGE(t1,t2) 

样例3:

 
  1. -- hint位于 /*+ 和 */ 之间  
  2. SELECT     
  3. /*+ USE_MERGE(t,t1) NO_USE_MERGE(t1,t2) INDEX(t1 PK_My_Table1) first_rows*/   
  4. <<字段名列表>>  
  5. from .....  
  6.    

 

 本文转自 ztfriend 51CTO博客,原文链接:http://blog.51cto.com/idata/947744,如需转载请自行联系原作者

你可能感兴趣的文章
MyBatis:Insert操作详解(返回主键、批量插入)
查看>>
什么原因导致Chrome又被批评
查看>>
centos7(linux)系统下利用自带的mail发送邮件服务
查看>>
Linux文件系统
查看>>
Tomcat启动时项目重复加载,导致资源初始化两次的问题
查看>>
Java 自动拆箱和自动装箱学习笔记
查看>>
ajax中post与get的区别
查看>>
密码加盐方法
查看>>
SpringBoot基础——知其所以然,更知其然。
查看>>
MySql中having字句对组记录进行筛选使用说明
查看>>
算法识别团伙犯罪引发巨大争议,研发者:我只是个工程师
查看>>
Android View 事件传递
查看>>
Oracle 直接路径读
查看>>
【云计算的1024种玩法】第1招:制作一个浪漫的表白网页
查看>>
Docker Swarm集群初探
查看>>
很全很全的前端本地存储讲解
查看>>
视频行为分析数据库总结
查看>>
基于JAVA的模块化开发框架JarsLink,阿里出品
查看>>
A non well formed numeric value encountered
查看>>
12.21 php-fpm的pool 12.22 php-fpm慢执行日志 12.23 open_basedir 12.24 php-fpm进程管理
查看>>