複数テーブル結合インデックスの統計と、その元の実テーブルの統計は、別々のものです。ある列が、実テーブルとそれに対して定義されている複数テーブル結合インデックスの両方について定義される場合、その両方の列について別々に統計を収集することが必要です。
実テーブルに格納された統計の列の値は、複数テーブル結合インデックス内で派生した結合結果に格納されたものとは全く異なる可能性があります。複数テーブル結合インデックスの統計が収集されていない場合、最適化ルーチンはその基礎となる実テーブルについて収集された統計から、それに対応する統計を派生することはない。
統計の収集は、単純なデータ列、または結合インデックスのセカンダリ インデックスの列セットについて収集できます。複数テーブル結合インデックス テーブルを、派生した結合結果を表わす特殊な実テーブルとして考えると便利です。統計は、最適化ルーチンによるこれらの代替アクセス パスの評価をサポートするために、検索条件キーを使用して収集する必要があります。
実行計画には、複数テーブル結合インデックス テーブルを、その複数テーブル結合インデックスの一部ではないまた別のテーブルと結合することを含めることもできます。このことが発生していることがEXPLAIN文で示されている場合は、最適化ルーチンが評価するのを支援するために、それらの結合列の統計も収集する必要があります。
新しい複数テーブル結合インデックスを作成する前に、作成のパフォーマンス向上だけでなく更新保守のパフォーマンス向上のためにも、以下の手順を実行することを考慮する必要があります。
- 計画中の複数テーブル結合インデックスの基礎となる基礎テーブルの統計を収集する。
- 次に新しい複数テーブル結合インデックスを作成する。