Tipos de consultas e índices
Cuando se plantee la posibilidad de crear un índice en una columna, tenga en cuenta de qué modo se utilizará la columna en las consultas. En la siguiente tabla se describen los tipos de consulta para los que resultan útiles los índices.
[!NOTA] Los ejemplos de la tabla se basan en la base de datos de ejemplo AdventureWorks. Al ejecutar los ejemplos de SQL Server Management Studio, para ver los índices seleccionados por el optimizador de consultas, muestre el plan de ejecución real. Para obtener más información, vea Cómo mostrar un plan de ejecución real.
Consulta en la que el predicado de la columna es uno de los siguientes | Descripción de la consulta y ejemplo | Índice que se tendrá en cuenta |
---|---|---|
Coincidencia exacta con un valor específico |
Busca una coincidencia exacta en la que la consulta utiliza la cláusula WHERE para especificar una entrada de columna con un valor específico. Por ejemplo:
|
Un índice agrupado o no agrupado de la columna |
Una coincidencia exacta con un valor de una lista IN (x,y,z) |
Busca una coincidencia exacta con un valor de una lista de valores especificada. Por ejemplo:
|
Un índice agrupado o no agrupado de la columna |
Intervalo de valores |
Busca un intervalo de valores en el que la consulta especifica cualquier entrada que tenga un valor que se encuentre entre dos valores. Por ejemplo:
O bien
|
Un índice agrupado o no agrupado de la columna |
Combinación de tablas |
Busca filas de una tabla que coincidan con una fila de otra tabla a partir de un predicado de combinación. Por ejemplo:
|
Un índice agrupado o no agrupado de las columnas |
Comparación LIKE |
Busca filas coincidentes que empiecen por una cadena de caracteres específica, como 'abc%'. Por ejemplo:
|
Un índice agrupado o no agrupado de la columna |
Ordenada o agregada |
Requiere un criterio de ordenación implícito o explícito o una agregación (GROUP BY). Por ejemplo:
|
Índice agrupado o no agrupado de la columna ordenada o agregada. En el caso de las columnas ordenadas, considere la posibilidad de especificar el orden ASC o DESC de la columna. |
Restricción PRIMARY KEY o UNIQUE |
Busca duplicados de nuevos valores de clave de índice en operaciones de inserción y actualización para forzar las restricciones PRIMARY KEY y UNIQUE. Por ejemplo:
|
Índice agrupado o no agrupado de las columnas definidas en la restricción. |
Operación UPDATE o DELETE en una relación PRIMARY KEY/FOREIGN KEY |
Busca filas en una operación de actualización o eliminación en las que la columna interviene en una relación PRIMARY KEY/FOREIGN KEY, con o sin la opción CASCADE. |
Un índice agrupado o no agrupado de la columna de clave externa. |
La columna se encuentra en la lista de selección, pero no en el predicado. |
Incluye una o varias columnas de la lista de selección que no se utilizan para realizar búsquedas. Por ejemplo:
|
Índice no agrupado con |
Vea también
Conceptos
Directrices generales para diseñar índices
Índice con columnas incluidas