Indices en SQL
Los indices nos ayudan a obtener los datos de manera mas rapida, siempre y cuando sean creados de manera correcta ya que el uso excesivo de indices tambien puede alentar nuestra consulta en lugar de mejorar el rendimiento.
La sintaxis basica para crear un indice es la siguiente:
create TIPOINDICE index NOMBREINDICE
on TABLA(CAMPOS);
El TIPOINDICE indica si es agrupado o no agrupado, si no indicamos el tipo de indice por default genera un indice no agrupado.
El NOMBREINDICE puede ser un nombre que sea facil de identificar a que hace referencia el indice.
La TABLA es el nombre de la tabla que se agrega el indice y el CAMPOS es el campo o los campos que componen el indice para la tabla.
Un ejemplo de la creacion de un indice es la siguiente:
create nonclustered index indxejemplo
on tablaejemplo(campoejemplo);
SQL Server crea de manera automatica índices cuando se establece una restricción "primary key" o "unique" al campo de una tabla.
Al crear una restricción "primary key", si no se especifica, el índice será agrupado (clustered) a menos que ya exista un índice agrupado para dicha tabla. Al crear una restricción "unique", si no se especifica, el índice será no agrupado (non clustered).
Para ver los indices de una tabla de la base de datos ejecutamos la siguiente sentencia:
sp_helpindex NOMBRETABLA;
Muestra el nombre del índice, si es agrupado (o no), primary (o unique) y el campo por el cual se indexa.
Todos los índices de la base de datos activa se almacenan en la tabla del sistema "sysindexes", podemos consultar dicha tabla ejecutando la siguiente sentencia:
select name from sysindexes;

Comentarios
Publicar un comentario