はじめに
Oracle 11gでヒント句は使用できるのかを試してみました。
環境
- Windows Server 2008 R2
- Oracle Database 11g EE Release 11.2.0.1.0
ざっくり言うと
- Oracle 11gでもヒント句は使える
- ruleヒント以外のヒントはコストベースで動作する
- ヒント句を指定した時と、外したときの違い検証したほうが良い
インデックスの作成
CREATE INDEX idx_01 ON hoge.table01(BIRTHDAY) TABLESPACE USERS; CREATE INDEX idx_02 ON hoge.table01(BIRTHDAY, SEIBETSU) TABLESPACE USERS;
インデックスヒントを指定したSQL
select /*+ INDEX(table01 idx_01) */ * from table01 where birthday = '20130404';
select /*+ INDEX(table01 idx_02) */ * from table01 where birthday = '20130404' and SEIBETSU = '女';