Condividi tramite


Operatore Showplan Clustered Index Seek

Data aggiornamento: 12 dicembre 2006

L'operatore Clustered Index Seek utilizza le funzionalità di ricerca degli indici per recuperare righe da un indice cluster. La colonna dell'argomento include il nome dell'indice cluster utilizzato e il predicato SEEK:(). Il motore di archiviazione utilizza l'indice per elaborare soltanto le righe conformi al predicato SEEK:(). Può inoltre includere un predicato WHERE:() in cui il motore di archiviazione valuta tutte le righe che sono conformi al predicato SEEK:(). Si tratta però di un predicato facoltativo, che non utilizza gli indici per completare l'elaborazione.

Se la colonna dell'argomento****include la clausola ORDERED, Query Processor ha determinato che le righe devono essere restituite nello stesso ordine utilizzato dall'indice cluster. Se la clausola ORDERED non è presente, il motore di archiviazione esegue la ricerca nell'indice in modo ottimale, senza necessariamente ordinare l'output. Il mantenimento dell'ordinamento dell'output può dare come risultato un livello di efficienza minore rispetto alla restituzione di output non ordinato.

Quando viene visualizzata la parola chiave LOOKUP, è in esecuzione una ricerca tramite segnalibro. In SQL Server 2005 Service Pack 2, la funzionalità di ricerca tramite segnalibro è offerta dall'operatore Key Lookup.

Clustered Index Seek è un operatore logico e fisico.

Icona dell'operatore Clustered Index SeekIcona del piano di esecuzione grafico

Esempi

Nell'esempio seguente viene eliminata una riga da una tabella con un indice cluster. L'output del piano di esecuzione indica che Query Optimizer utilizza l'operatore Clustered Index Seek per recuperare le righe specificate.

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;

Di seguito è riportato l'output del piano di esecuzione dell'operatore Clustered Index Seek.

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

Vedere anche

Attività

Procedura: Visualizzazione di un piano di esecuzione effettivo

Riferimento

Operatore Showplan Clustered Index Scan
Operatore Showplan Key Lookup

Concetti

Guida di riferimento agli operatori logici e fisici
Strutture degli indici cluster
Visualizzazione di piani di esecuzione tramite le opzioni SET SHOWPLAN (Transact-SQL)

Guida in linea e informazioni

Assistenza su SQL Server 2005

Cronologia modifiche

Versione Cronologia

12 dicembre 2006

Nuovo contenuto:
  • Aggiunta di una frase relativa all'operatore Key Lookup.

17 luglio 2006

Nuovo contenuto:
  • Aggiunta della sezione Esempi.