2016-12-14 8 views
-1

私の質問は、select文が2つの値に依存するwhere節を持っていて、そのうちの1つがインデックス付き列から来ていて、もう1つがそうでない場合です。 例:select文のインデックス実行フロー

Select * from table1 where col1 = 'val1' and col2 = 'val2'; 

我々はCOL1を想定した場合には、インデックス付けとcol2はありません。 col2とcol1の間に違いがありますか?ないとインデックスと他との一つの列がある場合、私はについてですお願いしたいと思いますどのような

を更新しました

は、クエリが速くなっていますか? where節が1つのインデックス付き列のみに依存するかどうかは同じですか?

+2

カーディナリティ( 'col1'がインデックスされている場合、' col1'の 'val1'を持つ行の数)によっても異なります。実行するのが最善のことは、クエリを実行し、実行計画の内容を確認することです。さもなければ、これは広すぎて投機的に開くものではない。 –

+2

はい、違います。どのような問題を解決しようとしていますか?あなたの質問への答えは広いです。 –

+0

私がお聞きしたいのは、インデックス付きの列が1つあり、それ以外の列がない場合は、クエリが高速化するかどうかです。 where節が1つのインデックス付き列のみに依存するかどうかは同じですか? – null

答えて

-2

70から461個の材料によれば、例えば

FROM ON JOIN WHERE GROUP BY WITH CUBE or WITH ROLLUP HAVING SELECT 
DISTINCT ORDER BY TOP 

SELECT C1 AS x 入力できませんWHERE x IS NOT NULL

WHERE clausの述語の順序は、Microsoftだけが知るパラメータに基づいてSQL Serverによって定義されます。

関連する問題