インデックス

SQLServer【Index編】#S2_17_インデックス作成手順

今回は,インデックスの作成手順をまとめてみました。

Step1

テーブルを作成したら,まずはプライマリキーを作成しましょう。これでクラスター化インデックスが作成されます。

Step2

必要であればユニークキーを作りましょう。これは必要ならって感じです。社員テーブルの「メールアドレス」等です。

Step3

Step2までがキーの設計でした。Step3では非クラスター化インデックスを設計しましょう。

画面などで検索条件になっていて,クラスター化インデックス,非クラスター化インデックスになっていない物は,作成しましょう。検索条件以外でも「結合条件」「削除条件」「更新条件」なども同じです。

現場でSQLを作成したら,必ず実行プランを確認してください。非クラスター化インデックスを作成したつもりでも「IndexScan」になっていたり,「クラスター化インデックスScan」になったりしている可能性があります。うまくSeekになっているかを確認しながら実装してください。

Step4

付加列インデックスの設計をします。非クラスター化インデックスだけではどうしても速度が出ないときに,Select項目を付加列インデックスとして登録しましょう。速度が出ないときは,付加列インデックスだけでなく,今回の社員テーブルのBikouのように,大きいバイト数の列を別のテーブルを分けるなどで改善する場合もあるので,そのあたりの検討は必要です。

SQLServerインデックスを理解して検索を高速にする方法