概述
有时候Oracle自动生成的执行计划是“笨”的,我们给一些提示信息,让Oracle自动找到“聪明”的执行计划,这就是"hint"。
初学者,甚至专业人员,会遇到这样的疑惑:hint不起作用?
因为Oracle对于错误的hint是自动忽略,所以我们要特别注意hint的语法(暂列一条):如果在SQL中使用了别名,那么Hint中也要使用别名。
样例1:
- -- 使用索引,t2为别名,PK_My_Table2为索引名
- INDEX(t2 PK_My_Table2)
样例2:
- -- 要关联t和t1 (其中t和t1为别名)
- USE_MERGE(t,t1)
- -- 不要关联t1和t2 (其中t1和t2为别名)
- NO_USE_MERGE(t1,t2)
样例3:
- -- hint位于 /*+ 和 */ 之间
- SELECT
- /*+ USE_MERGE(t,t1) NO_USE_MERGE(t1,t2) INDEX(t1 PK_My_Table1) first_rows*/
- <<字段名列表>>
- from .....
本文转自 ztfriend 51CTO博客,原文链接:http://blog.51cto.com/idata/947744,如需转载请自行联系原作者
最后
以上就是害羞河马为你收集整理的撰写oracle-sql-hint的注意事项的全部内容,希望文章能够帮你解决撰写oracle-sql-hint的注意事项所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复