SQL Serverのインデックスを再構築する
SQL Serverはインデックスの断片化によりパフォーマンスが悪化することがあります。
その場合、インデックスを再構築するとパフォーマンス向上する場合があります。
SQL Serverのインデックスを再構築するには2つのパターンがあります。
- 特定のインデックスのみを再構築する
- 特定のテーブルに紐づいたインデックスを丸ごと再構築する
インデックスを再構築するには2つのパターンについて解説します。
SQL Serverのインデックスを再構築する(インデックス指定)
-- インデックスを再構築する ALTER INDEX {インデックス名} ON {テーブル名} REBUILD;
インデックスを再構築するには「ALTER INDEX ~ REBUILD」を使います。
-- index1を再構築する ALTER INDEX index1 ON dbo.table1 REBUILD;
ここでは「index1」を再構築しました。
SQL Serverのインデックスを再構築する(テーブルまとめて)
-- テーブルのインデックスをまとめて再構築する ALTER INDEX ALL ON {テーブル名} REBUILD;
あるテーブルのインデックスをまとめて再構築するには「ALTER INDEX ALL ~ REBUILD」を使います。インデックスが3つ、4つあってもすべて再構築します。
-- table1のインデックスをまとめて再構築する ALTER INDEX ALL ON dbo.table1 REBUILD;
ここではtable1テーブルのインデックスをまとめて再構築しました。
これで、インデックスを再構築する2種類の方法(インデックスごと、テーブルごと)でインデックスを再構築できました。
以上、SQL Serverのインデックスを再構築するSQLでした。
コメント