Klucza wyszukiwania Showplan operatora
Wprowadzone w SQL Server 2005 Service Pack 2, Klucza wyszukiwania operator jest wyszukiwanie zakładki tabela z indeks klastrowany.Argumentu kolumna zawiera nazwę indeksu klastrowanego oraz klastrowanie klucz używany do wyszukiwania w wierszu indeksu klastrowanego.Wyszukiwanie klucza zawsze towarzyszą Zagnieżdżone pętle operator.Jeśli klauzula PREFETCH Z argumentu kolumna, procesor kwerend ustalił jest optymalny asynchronicznych prefetching (odczyt z wyprzedzeniem) przy wyszukiwanie zakładek w indeks klastrowany.Aby uzyskać więcej informacji na temat odczytu z wyprzedzeniem, zobacz Czytanie stron.
W starszych wersjach SQL Server 2005, funkcji wyszukiwania zakładki jest wyświetlana za pomocą Poszukiwania indeksu klastrowanego operator ze słowem kluczowym wyszukiwania.W dodatku SP2 Klucza wyszukiwania Wyświetla ikonę operator w graficznym wykonanie planu; Jednakże, wyświetlając plan wykonania w formacie XML lub tekst, dane wyjściowe pokazuje Poszukiwania indeksu klastrowanego operator ze słowem kluczowym wyszukiwania.
Korzystanie z Klucza wyszukiwania operator w plan kwerend wskazuje, że kwerendy mogą korzystać z dostrajania wydajności.Na przykład dodając indeks obejmujący może poprawić wydajność kwerendy.
Graficzne wykonanie planu ikony
Przykłady
Poniższy przykład uruchamia kwerendę prostą, modyfikuje indeks nieklastrowany na pokrycie kwerendy i następnie re-runs kwerendę, aby zaobserwować różnice w plan wykonania kwerend.Wyświetlając plan wykonania graficznego dla tej kwerendy, można zobaczyć, że plan realizacji pierwszej kwerendy zawiera Klucza wyszukiwania do pobierania używany jest operator GroupName danych z indeks klastrowany na HumanResources.Department tabela.
Plan wskazuje także, że indeks nieklastrowany AK_Department_Name użyte do zaspokojenia predykat klauzula WHERE kwerendy.Modyfikując tego indeksu, aby uwzględnić GroupName kolumna, indeks może obejmować kwerendy i planu kwerendy zawiera tylko indeks wyszukiwania operacji.Czas na wykonać kwerendy jest znacznie zmniejszone.
USE AdventureWorks2008R2;
GO
SELECT GroupName
FROM HumanResources.Department
WHERE Name = 'Engineering';
GO
-- Create a covering index by adding GroupName to the nonclustered index.
USE AdventureWorks2008R2;
GO
CREATE UNIQUE NONCLUSTERED INDEX AK_Department_Name
ON HumanResources.Department ( Name ASC, GroupName)
WITH (DROP_EXISTING = ON);
GO
USE AdventureWorks2008R2;
GO
SELECT GroupName
FROM HumanResources.Department
WHERE Name = 'Engineering';
GO
Zobacz także