- 締切済み
is not nullについて
is not nullについて 質問です。 SQLServer2005を使用しています。 where文である項目に対して「is not null」を使用しているのですが、 いきなり応答時間が遅くなりました。 それまで(約2年間)2秒ぐらいだったのが、10分近くかかるようになりました。 「is not null」を外せば通常に戻るのですが、対象データがある件数(容量)を超える と遅くなるのでしょうか? また、インデックスの再構成→再構築を行うと通常に戻りました。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- kotoby2003
- ベストアンサー率15% (280/1755)
回答No.1
is not nullがあると、インデックスが無効になるので、データ量に比例して遅くなると思います。 ただ、インデックスの再構成→再構築を行うと通常に戻りました、ともありますので、ただ単にインデックスが断片化していただけではないでしょうか。 定期的にインデックスは再作成する必要があります。 インデックスの断片化 http://msdn.microsoft.com/ja-jp/library/ms189858.aspx
お礼
「is not null」があるとインデックスが無効になるのですね。 知りませんでした。勉強になります。 毎日に夜間にインデックスの再構築は行っているんですよ。 ただ、再構成は同時に行っていないので、これからは週一ぐらいで 再構成→再構築を行ってみます。 回答ありがとうございました