Share via


sys.indexes (Transact-SQL)

Contiene una fila por índice o montón de un objeto tabular, como una tabla, una vista o una función con valores de tabla.

Se aplica a: SQL Server (desde SQL Server 2008 hasta la versión actual), Windows Azure SQL Database (desde la versión inicial hasta la versión actual).

Nombre de columna

Tipo de datos

Descripción

object_id

int

Id. del objeto al que pertenece este índice.

name

sysname

Nombre del índice. name es exclusivo solo dentro del objeto.

NULL = Montón

index_id

int

Id. del índice. index_id es exclusivo solo dentro del objeto.

0 = Montón

1 = Índice clúster

> 1 = Índice no clúster

type

tinyint

Tipo de índice:

0 = Montón

1 = Clúster

2 = No clúster

3 = XML

4 = Espacial

5 = Índice clúster de almacén de columnas

6 = Índice no clúster de almacén de columnas

7 = Índice hash no clúster

type_desc

nvarchar(60)

Descripción del tipo de índice:

HEAP

CLUSTERED

NONCLUSTERED

XML

SPATIAL

CLUSTERED COLUMNSTORE

Se aplica a: SQL Server 2014 a SQL Server 2014.

NONCLUSTERED COLUMNSTORE

Se aplica a: SQL Server 2012 a SQL Server 2014.

NONCLUSTERED HASH

Los índices NONCLUSTERED HASH solo se admiten en las tablas con optimización para memoria. La vista sys.hash_indexes muestra los índices hash actuales y las propiedades hash. Para obtener más información, vea sys.hash_indexes (Transact-SQL).

Se aplica a: SQL Server 2014 a SQL Server 2014.

is_unique

bit

1 = El índice es exclusivo.

0 = El índice no es exclusivo.

Siempre es 0 para los índices clúster de almacén de columnas.

data_space_id

int

Id. del espacio de datos para este índice. El espacio de datos es un grupo de archivos o un esquema de partición.

0 = object_id es un índice en memoria o una función con valores de tabla.

ignore_dup_key

bit

1 = IGNORE_DUP_KEY está ON.

0 = IGNORE_DUP_KEY está OFF.

is_primary_key

bit

1 = El índice forma parte de una restricción PRIMARY KEY.

Siempre es 0 para los índices clúster de almacén de columnas.

is_unique_constraint

bit

1 = El índice forma parte de una restricción UNIQUE.

Siempre es 0 para los índices clúster de almacén de columnas.

fill_factor

tinyint

> 0 = Porcentaje de FILLFACTOR utilizado al crear o volver a generar el índice.

0 = Valor predeterminado

Siempre es 0 para los índices clúster de almacén de columnas.

is_padded

bit

1 = PADINDEX está ON.

0 = PADINDEX está OFF.

Siempre es 0 para los índices clúster de almacén de columnas.

is_disabled

bit

1 = El índice está deshabilitado.

0 = El índice no está deshabilitado.

is_hypothetical

bit

1 = El índice es hipotético y no se puede utilizar directamente como ruta de acceso a datos. Los índices hipotéticos contienen estadísticas de nivel de columna.

0 = El índice no es hipotético.

allow_row_locks

bit

1 = El índice admite bloqueos de fila.

0 = El índice no admite bloqueos de fila.

Siempre es 0 para los índices clúster de almacén de columnas.

allow_page_locks

bit

1 = El índice admite bloqueos de página.

0 = El índice no admite bloqueos de página.

Siempre es 0 para los índices clúster de almacén de columnas.

has_filter

bit

1 = El índice tiene un filtro y solo contiene filas que cumplen con la definición del filtro.

0 = El índice no tiene un filtro.

filter_definition

nvarchar(max)

Expresión para el subconjunto de filas incluido en el índice filtrado.

NULL para el montón o el índice no filtrado.

Permisos

La visibilidad de los metadatos en las vistas de catálogo se limita a los elementos protegibles y que son propiedad de un usuario o sobre los que el usuario tiene algún permiso. Para obtener más información, vea Configuración de visibilidad de los metadatos.

Ejemplos

El ejemplo siguiente devuelve todos los índices para la tabla Production.Product de la base de datos AdventureWorks2012.

SELECT i.name AS index_name
    ,i.type_desc
    ,is_unique
    ,ds.type_desc AS filegroup_or_partition_scheme
    ,ds.name AS filegroup_or_partition_scheme_name
    ,ignore_dup_key
    ,is_primary_key
    ,is_unique_constraint
    ,fill_factor
    ,is_padded
    ,is_disabled
    ,allow_row_locks
    ,allow_page_locks
FROM sys.indexes AS i
INNER JOIN sys.data_spaces AS ds ON i.data_space_id = ds.data_space_id
WHERE is_hypothetical = 0 AND i.index_id <> 0 
AND i.object_id = OBJECT_ID('Production.Product');
GO

Vea también

Referencia

Vistas de catálogo de objetos (Transact-SQL)

Vistas de catálogo (Transact-SQL)

sys.index_columns (Transact-SQL)

sys.xml_indexes (Transact-SQL)

sys.objects (Transact-SQL)

sys.key_constraints (Transact-SQL)

sys.filegroups (Transact-SQL)

sys.partition_schemes (Transact-SQL)

Conceptos

Consultar las preguntas más frecuentes (P+F) del catálogo del sistema de SQL Server

OLTP en memoria (optimización en memoria)