私はこのような結論に達しました。以下のように、シーク/スキャンを行います。しかし、私は得られませんでした。 なぜ第1ケースでスキャンし、第2ケースでシークしますか?私は第3のケースを理解した。likeとwhereパターンの列のインデックス?
SELECT c.contactname FROM Sales.Customers c
WHERE c.contactname LIKE '%a'-- Does a Scan 1st Case
SELECT c.contactname FROM Sales.Customers c
WHERE c.contactname LIKE 'a%'-- Does a Seek 2nd Case
SELECT c.contactname FROM Sales.Customers c
WHERE c.contactname LIKE '%a%'-- Does a Scan
私はビルドが数字のために、それはより大きくより少ないと比較しますと はどのようにインデックスツリーの意志を横断行います場合は、私たちのような.. インデックスツリーになりますどのようにサンプルデータの下に持っている担当者名にインデックスを構築した場合以下の場合に横断する。
c.contactname
mark
anna
krishna
nadejda
allen
bob
cab
*「初めに「A」ですべてのものを見ることによって」* ...''a ''で始まらない文字が見つかるとすぐに停止します(このサンプルでは' bob'など)。 –