Indices - plan de ejecución
Publicado por Isabel (15 intervenciones) el 15/10/2007 19:14:38
Por favor, ayuda para interpretar el plan de ejecución de lo siguiente:
Tengo una tabla en SQL 2000:
TABLA
Columna1 Decimal(8,0)
Columna2 Decimal(5,0)
Columna3 VarChar(5)
Columna4 VarChar(5)
Columna5 DateTime
Donde:
Primary Key (Columna1, Columna2, Columna3, Columna4) clustered
Al hacer las siguientes consultas, dependiendo del valor ingresado para la columna1, hace un seek o un scan:
Select * from TABLA Where Columna1 = 51
go
--En el plan de ejecución: Clustered Index seek
Select * from TABLA Where Columna1 = 32778
go
--En el plan de ejecución: Clustered Index scan
Select * from TABLA Where Columna1 = 197456
go
--En el plan de ejecución: Clustered Index scan
¿Por qué cuando los valores son superiores a los 32700 no hace seek?
¿ Es por el tipo de datos decimal?
Gracias.
Tengo una tabla en SQL 2000:
TABLA
Columna1 Decimal(8,0)
Columna2 Decimal(5,0)
Columna3 VarChar(5)
Columna4 VarChar(5)
Columna5 DateTime
Donde:
Primary Key (Columna1, Columna2, Columna3, Columna4) clustered
Al hacer las siguientes consultas, dependiendo del valor ingresado para la columna1, hace un seek o un scan:
Select * from TABLA Where Columna1 = 51
go
--En el plan de ejecución: Clustered Index seek
Select * from TABLA Where Columna1 = 32778
go
--En el plan de ejecución: Clustered Index scan
Select * from TABLA Where Columna1 = 197456
go
--En el plan de ejecución: Clustered Index scan
¿Por qué cuando los valores son superiores a los 32700 no hace seek?
¿ Es por el tipo de datos decimal?
Gracias.
Valora esta pregunta


0