2

(A、B、C、D)にインデックスがある非主キー列(A、B、C、D)を持つテーブルがあるとします。

(A、B、C、D)のサブセットを含むクエリはインデックスを利用しますか?説明されているように、部分的なキールックアップにはどのような特異性がありますか?

これがSQLServer、Sqlite、Firebirdでどのように機能するかに特に興味があります。

4

2 に答える 2

5

インデックスの初期サブセットを使用するクエリでは、インデックスを使用する必要があります。

したがって、(A)、(A)と(B)、および(A)と(B)と(C)の等結合はインデックスを使用する必要があります。

実際には、不等式を追加することもできるため、インデックスは次のすべてをサポートする必要があります。

  • xA = yA
  • xA=yAおよびxB>yB
  • xA=yAおよびxB=yB
  • xA=yAおよびxB=yBおよびxC>yC
  • xA=yAおよびxB=yBおよびxC=yC
  • xA=yAおよびxB=yBおよびxC=yCおよびxD>yD
  • xA=yAおよびxB=yBおよびxC=yCおよびxD=yD
于 2013-03-25T01:33:55.137 に答える
3

はい、検索キーがインデックスフィールドと同じ順序である場合。

それ以外の場合はありません。図書館に行くように指示されたとしましょう。「TheGreatGatsby」、第3章、3ページ目をご覧ください。これは、マルチフィールドインデックスを使用するようなものです。

ここで、本のタイトルなしで、第3章の3ページ目を取得するように指示されたとします。あなたはすべての本を調べなければならないでしょう。

于 2013-03-25T01:52:09.287 に答える