主キーと 2 つの外部キーを持つテーブルがあり、どちらも NULLS を許可しています。
2 つの列ごとに個別にインデックスを作成すると、クエリは約 2 ~ 3 秒実行され、約 300000 行が返されます。
その2つの列に対して複合非クラスター化インデックスを作成すると、同じ数の行に対して約10分間クエリが実行されます。
次のように、2 つの列が WHERE 条件に表示され、OR 句で機能することに注意してください。
Select
SomeColumn
From
SomeTable
Where
FirstColumn = x OR SecondColumn = x
クエリが実行されたプラットフォームは SQL 2008 R2 です。
その 2 つのケースで実行時間にこのような違いがあるのはなぜですか?