Typy kwerendy i indeksów
Podczas rozważania są czy utworzyć indeks dla kolumny, należy ocenić, jak kolumna jest używana w kwerendach.W poniższej tabeli opisano typy kwerendy, dla których indeksy są użyteczne.
Uwaga
Przykłady w tabela są oparte na AdventureWorks Przykładowa baza danych. Po uruchomieniu w przykładach SQL Server Management Studio, można wyświetlić wybranego przez optymalizator kwerendy wyświetlając plan wykonania rzeczywistej indeksy. Aby uzyskać więcej informacji zobaczHow to: Display an Actual Execution Plan.
Kwerendy, w którym predykat kolumna jest jeden z nich |
Opis kwerendy i przykład |
Indeks do rozważenia |
---|---|---|
Dokładnie pasuje do określonej wartości |
Wyszukuje dokładny odpowiednik, w którym w kwerendzie użyto klauzula WHERE, aby określić pozycję kolumna z określonej wartości.Na przykład:
|
Indeks klastrowany lub nieklastrowany na EmployeeID Kolumna. |
Dokładne dopasowanie do wartości w IN (x, y, z) listy |
Wyszukuje dokładnie pasującą wartość określonej listy wartości.Na przykład:
|
Indeks klastrowany lub nieklastrowany na EmployeeID Kolumna. |
Zakres wartości |
Szuka zakres wartości, w których kwerendy określa każdy wpis, który ma wartość pomiędzy dwiema wartościami.Na przykład:
Or
|
Klastrowany lub indeks nieklastrowany na ProductModelID Kolumna. |
łączyć między tabelami |
Wyszukuje w tabela wiersze, które odpowiadają wiersza w innej tabela, w oparciu o predykat łączyć.Na przykład:
|
Indeks klastrowany lub nieklastrowany na ProductID i ProductAssemblyID kolumny. |
LIKE porównania |
Wyszukiwanie zgodnych wierszy, które zaczynają się ciąg znaków szczególnych, takich jak abc %.Na przykład:
|
Indeks klastrowany lub nieklastrowany na Name Kolumna. |
Posortowane lub łączone |
Wymaga kolejność sortowania bezpośrednia lub pośrednia lub agregacja (GROUP BY).Na przykład:
|
Klastrowany lub nieklastrowany indeks kolumna sortowania lub zagregowane. W przypadku sortowania kolumn należy wziąć pod uwagę określać kolejność ASC lub DESC kolumna. |
Ograniczenia klucz podstawowy lub UNIQUE |
Wyszukiwanie duplikatów nowy indeks klucza wartości wstawiania i aktualizowanie operacji, aby wymusić ograniczenia klucz podstawowy i unikatowy.Na przykład:
|
Indeks klastrowany lub nieklastrowany na kolumna lub kolumna, które zdefiniowano w ograniczenie. |
Operacja UPDATE lub DELETE klucz podstawowy / klucz obcy relacji |
Wyszukiwanie wierszy w przypadku operacji aktualizację lub usunięcie, w którym kolumna uczestniczą w relacji klucz podstawowy KEY/walut obcych, lub bez opcją CASCADE. |
Indeks klastrowany lub nieklastrowany kolumna klucz obcy. |
Kolumna jest na liście select, ale nie w predykacie. |
Zawiera jedną lub więcej kolumn na liście select, które nie są używane do wyszukiwania i wyszukiwań.Na przykład:
|
Indeks nieklastrowany z FileName określone w klauzula INCLUDE. |