環境:Oracle9i
以下の担当者テーブルがあるとします。
| 担当者コード |
グループコード |
担当者名 |
その他1 |
その他2 |
... |
| 001 |
001 |
A |
xxx |
xxx |
... |
| 002 |
001 |
B |
xxx |
xxx |
... |
| 003 |
002 |
C |
xxx |
xxx |
... |
| 004 |
003 |
D |
xxx |
xxx |
... |
担当者コードはユニークなキーとなります。
各担当者は必ずどこかのグループに属しています。
この担当者テーブルがグループ単位で呼び出されることが多い場合は
通常「グループコード」でindexを作成します。
ここまでのチューニングはわりと行われています。
このときに使用されるテーブルの項目に着目します。
「担当者名」項目のみを取得することが多い場合は
「グループコード、担当者名」のindexに変更することを検討します。
「グループコード、担当者名」のindexにより
index領域のみの検索で完結でき、実テーブルを読まないので速度が向上します。