- PR -

INDEXヒントとは?

1
投稿者投稿内容
guest98
常連さん
会議室デビュー日: 2006/02/02
投稿数: 22
投稿日時: 2006-02-02 11:38
@ITの以下のページで、
LIKEの中間一致、後方一致で検索する場合は索引が使用されない。対処方法には、「INDEXヒントを使用する(索引列にNOT NULL制約が必要)」
と書かれています。http://www.atmarkit.co.jp/fdb/rensai/orasql07/orasql07_1.html

INDEXヒントとは一体何のことでしょうか?
現在チューニングを行っておりますので、有効な方法であれば是非利用したいのです。
今川 美保(夏椰)
ぬし
会議室デビュー日: 2004/06/10
投稿数: 363
お住まい・勤務地: 神奈川県茅ヶ崎市
投稿日時: 2006-02-02 12:01
OracleのSQL文では、SQL文中に実行計画を明示的に記述することができます。

それがヒント句って呼ばれていますが、
そのヒント句でもインデックスを使用するように指示したものがINDEXヒントですよ。

使い方などはこちらのページなどが参考になるのではないでしょうか?
http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/sq_tn03.htm
あんとれ
ぬし
会議室デビュー日: 2004/01/14
投稿数: 556
投稿日時: 2006-02-02 12:03
指定したインデックスを使用するように Oracle に指示することです。
ヒントについてはマニュアルにも記述があるでしょうが、

SELECT /*+ INDEX(tab_A, ind_B) */ * FROM table_A tab_a;

みたいな書き方をします。これで、実行計画作成時に tab_A の ind_B インデックスを利用することを Oracle が検討するようになります。
guest98
常連さん
会議室デビュー日: 2006/02/02
投稿数: 22
投稿日時: 2006-02-02 13:16
迅速なご返答ありがとうございます。

こんな方法があるとは知りませんでした!
一度、試してみようと思います。

夏椰|。σ)oさん、あんとれさん、ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)