INDEX_COL (Transact-SQL)

Se aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

Devuelve el nombre de columna indizado. Devuelve NULL para los índices XML.

Convenciones de sintaxis de Transact-SQL

Sintaxis

INDEX_COL ( '[ database_name . [ schema_name ] .| schema_name ]  
    table_or_view_name', index_id , key_id )   

Nota:

Para ver la sintaxis de Transact-SQL para SQL Server 2014 (12.x) y versiones anteriores, consulte Versiones anteriores de la documentación.

Argumentos

database_name
Es el nombre de la base de datos.

schema_name
Es el nombre del esquema al que pertenece el índice.

table_or_view_name
Es el nombre de la tabla o la vista indizada. table_or_view_name debe delimitarse con comillas simples y dobles y los literales deben delimitarse con comillas simples y puede ser un nombre completo e incluir el nombre de la base de datos y el nombre del esquema.

id_de_índice
Es el identificador del índice. index_ID es int.

key_id
Es la posición de la columna de clave de índice. key_ID es int.

Tipos de valor devuelto

nvarchar (128)

Excepciones

Devuelve NULL si se produce un error o si el autor de la llamada no tiene permiso para ver el objeto.

Un usuario solo puede ver los metadatos de elementos protegibles que posea o para los que se le haya concedido permiso. Esto significa que las funciones integradas de emisión de metadatos, como INDEX_COL, pueden devolver NULL si el usuario no tiene ningún permiso para el objeto. Para obtener más información, consulte Metadata Visibility Configuration.

Ejemplos

A. Utilizar INDEX_COL para devolver un nombre de columna de índice

En el ejemplo siguiente se devuelven los nombres de columna de las dos columnas de clave del índice PK_SalesOrderDetail_SalesOrderID_LineNumber.

USE AdventureWorks2022;  
GO  
SELECT   
    INDEX_COL (N'AdventureWorks2022.Sales.SalesOrderDetail', 1,1) AS  
        [Index Column 1],   
    INDEX_COL (N'AdventureWorks2022.Sales.SalesOrderDetail', 1,2) AS  
        [Index Column 2]  
;  
GO  

El conjunto de resultados es:

Index Column 1      Index Column 2  
-----------------------------------------------  
SalesOrderID        SalesOrderDetailID  

Consulte también

Expresiones (Transact-SQL)
Funciones de metadatos (Transact-SQL)
sys.indexes (Transact-SQL)
sys.index_columns (Transact-SQL)