SQLに複数のヒントの書き方

ORACLE SQLで複数のヒントの書き方を紹介します。

非常に簡単です。半角スペースを区切り文字として使います。
下のSQLのように半角スペースを空けて、ヒントを書いてください。

>>SQLが突然遅くなる原因と対応方法

>>ORACLEチューニング関連記事の一覧

◆SQLの例

select /*+INDEX(b 顧客マスタ_idx0) INDEX(b 担当者マスタ_idx0) INDEX(b 部門マスタ_idx0) */
  x.顧客コード
  ,b.顧客名
  ,x.担当者コード
  ,c.担当者名
  ,x.部署コード
  ,d.部署名
  ,x.売上金額
from
  (a.顧客コード
    ,a.担当者コード
    ,a.部署コード
    ,SUM(売上金額) as 売上金額
  from
    売上 a
  group by
    a.顧客コード
    ,a.担当者コード
    ,a.部署コード
  ) x
  ,顧客マスタ b
  ,担当者マスタ c
  ,部門マスタ d
where
  x.顧客コード = b.顧客コード
  and x.担当者コード = c.担当者コード
  and x.部署コード = d.部署コード
;


◆インデックスの例

CREATE INDEX 顧客マスタ_idx0
  ON test01.顧客マスタ(顧客コード,顧客名) TABLESPACE index_tbs;

CREATE INDEX 担当者マスタ_idx0
  ON test01.担当者マスタ(担当者コード,担当者名) TABLESPACE index_tbs;

CREATE INDEX 部門マスタ_idx0
  ON test01.部門マスタ(部署コード,部署名) TABLESPACE index_tbs;



>>おすすめのORACLE参考書まとめ





【SQLでお困りの方にオススメ】
■SQLが遅くなる原因
・SQLが突然遅くなる原因と対応方法
・OracleSQLのレスポンスが遅い原因3つ
・JOINを使って表結合するとSQLが遅い!?
・SQLがパラレル実行されない原因

■SQLチューニングの基礎知識
・ORACLE SQLのヒントとは
・ORACLEのオプティマイザと実行計画について
・ORACLEのテーブルやインデックスの「統計情報」とは

■SQLチューニングの方法
・SELECT文のSQLチューニング方法
・OracleExadataでのSQLチューニング方法
・SLECT文が遅いときのインデックス作成によるチューニング方法
・INSERT文のSQLチューニング方法
・Update文が遅いときのチューニング方法
・Delete文が遅いときのチューニング方法
・IN句をEXISTS句に置き換えするチューニング方法
・OR句の置き換えによるチューニング方法
・IN句の置き換えによるチューニング方法
・テーブルアクセスフルスキャンを無くしてチューニングする方法
・SQLでGROUP BYが遅いときのチューニング方法
・SQLのソート処理が遅い場合のチューニング方法

■表や索引の断片化対策
・プロが教えるORACLEの表や索引の断片化解消の見積り方法
・ORACLE表の断片化を解消する3つの方法

■SQLのチューニングの補足情報
・ORACLE SQLヒントの書き方
・SQLに複数のヒントの書き方
・OracleSQLに実装すべき3つのSQLヒント
・ORACLE表の統計情報取得日の確認方法
・「統計情報が古い」とはどういうことか
・ORACLE表の統計情報の取得方法

【自己学習したい方にオススメ】
・自宅で勉強用にORACLEデータベースを無償でダウンロードし構築する方法
・OracleMasterGold12cに一ヵ月で合格した勉強方法
・OracleMasterExpertパフォーマンス&チューニングに一ヵ月で合格した勉強方法
・手に職がない人はIT業界へ、オススメ資格と勉強方法
・OracleDBのチューニング勉強方法
・OraclePL/SQL勉強方法