SQL Server 2008 R2を使用していて、一意でないnull可能フィールドにクラスター化されていないインデックスを追加したいとします。私のインデックスは、1つの以上の列が私のクラスタ化インデックスをアクセスしないようにするために含まれています:myBasicField
の実際のデータでnull値をスキャンしないようにしてインデックススキャンを減らす方法
CREATE INDEX IX_My_Index
ON MyTable (myBasicField)
INCLUDE (myIncludedField);
をNULLs
がたくさんあるだろうと私は増やすことができる方法がある場合、私は思っていましたこれらのファイルをスキャンしないか、NULL
の値がインデックスに格納されないようにしてください。
ありがとうございます。
私はフィルタリングされたインデックスの答えが好きです。これはただのものです。あなたは、FKの関係を持つ別のテーブルにそのデータを置くことができますし、nullを完全に取り除くこともできます(NULLの場合はFKテーブルの行がない場合)。両方がクラスター化インデックスである場合、PKからFKへの結合は非常に高速です。 – Paparazzi