oracle 用HINT方式强制索引

WBOY
WBOYオリジナル
2016-06-07 15:07:512301ブラウズ

首先要看你的Oracle优化器采用的是RBO还是CBO, (1)如果使用的是RBO的话,会按照规则顺序来进行的. (2)如果使用的是CBO的话,那么可以使用HINT方式进行修改。 语法: SELECT /* index(table IndexName)*/ 如果查询语句中,表用到别名时,上边语句中的table一定

首先要看你的Oracle优化器采用的是RBO还是CBO,
(1)如果使用的是RBO的话,会按照规则顺序来进行的.
(2)如果使用的是CBO的话,那么可以使用HINT方式进行修改。

语法:SELECT /*+ index(table IndexName)*/
如果查询语句中,表用到别名时,上边语句中的table一定要是别名,否则不走执行强制索引。

例子:

select /*+INDEX(t IDX_DATE)*/  
from student t  
where t.birthday >  to_date('2010-12-28 00:00:00', 'yyyy-mm-dd hh24:mi:ss')  
and t.birthday 
<p><br>
 </p>
<p> </p>
<p> </p>


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:Oracle DB管理内存次の記事:MySQL STRAIGHT