Opérateur Showplan Clustered Index Seek
Mis à jour : 12 décembre 2006
L'opérateur Clustered Index Seek utilise la fonction recherche des index pour extraire des lignes d'un index cluster. La colonne Argument contient le nom de l'index cluster utilisé et le prédicat SEEK:() . Le moteur de stockage utilise l'index pour ne traiter que les lignes répondant à ce prédicat SEEK:() . Il peut également inclure le prédicat WHERE:() dans lequel le moteur de stockage évalue par rapport à toutes les lignes répondant au prédicat SEEK:(), mais ceci est facultatif et ne fait pas appel aux index pour exécuter ce processus.
Si la colonne Argument contient la clause ORDERED, le processeur de requêtes a déterminé que les lignes doivent être retournées dans l'ordre dans lequel l'index cluster les a triées. Si la clause ORDERED n'y figure pas, le moteur de stockage effectue la recherche dans l'index de façon optimale, sans nécessairement trier la sortie. Autoriser la sortie à conserver son classement peut s'avérer moins efficace que la production d'une sortie non triée.
Lorsque le mot clé LOOKUP apparaît, une recherche de signet est exécutée. Dans SQL Server 2005 Service Pack 2, l'opérateur Key Lookup fournit la fonctionnalité de recherche de signet.
Clustered Index Seek est un opérateur logique et physique.
Icône du plan d'exécution graphique
Exemples
L'exemple suivant supprime une ligne d'une table ayant un index cluster. La sortie du plan d'exécution indique que l'optimiseur de requête utilise l'opérateur Clustered Index Seek pour extraire les lignes spécifiées.
USE AdventureWorks;
GO
SET NOCOUNT ON;
GO
SET SHOWPLAN_ALL ON;
GO
SELECT Name
FROM Production.UnitMeasure
WHERE UnitMeasureCode BETWEEN 'Each' AND 'Inch';
GO
SET SHOWPLAN_ALL OFF;
La sortie du plan d'exécution de l'opérateur Clustered Index Seek s'affiche ci-dessous.
PhysicalOp
-----------------------------------------------------------------------
Clustered Index Seek
Argument
-----------------------------------------------------------------------
OBJECT:([AdventureWorks].[Production].[UnitMeasure].[PK_UnitMeasure_UnitMeasureCode]),
SEEK:([AdventureWorks].[Production].[UnitMeasure].[UnitMeasureCode] >=
CONVERT_IMPLICIT(nvarchar(4000),[@1],0) AND
[AdventureWorks].[Production].[UnitMeasure].[UnitMeasureCode]
<= CONVERT_IMPLICIT(nvarchar(4000),[@2],0)) ORDERED FORWARD
Voir aussi
Tâches
Procédure : afficher un plan d'exécution réel
Référence
Opérateur Showplan Clustered Index Scan
Opérateur Key Lookup Showplan
Concepts
Référence des opérateurs physiques et logiques
Structures des index cluster
Affichage des plans d'exécution à l'aide des options Showplan SET (Transact-SQL)
Aide et Informations
Assistance sur SQL Server 2005
Historique des modifications
Version | Historique |
---|---|
12 décembre 2006 |
|
17 juillet 2006 |
|