スキーマ名.表名 RUNSTATS ON TABLE スキーマ名.表名 AND INDEXES ALL (※DB2 10.1からスキーマ名が省略可能になっています) 多くの場合、この 基本形でOK RUNSTATS ON TABLE スキーマ名.表名 WITH DISTRIBUTION RUNSTATS ON TABLE スキーマ名.表名 WITH DISTRIBUTION AND INDEXES ALL RUNSTATS ON TABLE SIM.DEPARTMENTS WITH DISTRIBTION TABLESAMPLE BERNOULLI (5) 表を5%サンプリングする例(大 規模環境用) データに「偏り」がある場合、分散統計 を試してください。こちらもお勧め
巨大な表で分散統計を取得すると、実行時間が長くなりすぎる場合があります。その場合は TABLESAMPLEオプションでサンプリングを設定することで時間を調整可能です インデックスの分散統計 RUNSTATSで"… AND DETAILED INDEXES ALL"を指定することで、インデックスの分散 統計を取得できますが、インデックスの分散統計を取得することでアクセスプランが改善出来 るケースは(表の分散統計と比較すると)少ない傾向にあります DB2 9.7までと10.1ではインデックスの分散統計の挙動が変更されています 9.7まで: デフォルトでインデックス全体の分散情報を取得。SAMPLED DETAILEDと指定すると、サン プリングを実施 10.1から:デフォルトでは、インデックスをサンプリングして部分的な分散統計を取得。UNSAMPLED DETAILEDと指定すると、サンプリングせずに全体の分散統計を取得 インデックスの分散統計取得の例) RUNSTATS ON TABLE スキーマ名.表名 WITH DISTRIBUTION AND SAMPLED DETAILED INDEXES ALL