INDEX_COL (Transact-SQL)
Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure
Retorna o nome de coluna indexado. Retorna NULL para índices XML.
Convenções de sintaxe de Transact-SQL
Sintaxe
INDEX_COL ( '[ database_name . [ schema_name ] .| schema_name ]
table_or_view_name', index_id , key_id )
Argumentos
database_name
É o nome do banco de dados.
schema_name
É o nome do esquema ao qual o índice pertence.
table_or_view_name
É o nome da exibição indexada ou de tabela. table_or_view_name deve ser delimitado por aspas simples e totalmente qualificado pelo nome do banco de dados e do esquema.
index_id
É a ID do índice. index_ID é int.
key_id
É a posição da coluna de chave do índice. key_ID é int.
Tipos de retorno
nvarchar (128 )
Exceções
Retornará NULL em caso de erro ou se um chamador não tiver permissão para exibir o objeto.
Um usuário só pode exibir metadados de protegíveis de sua propriedade ou para os quais recebeu permissão. Isso significa que as funções internas emissoras de metadados, como INDEX_COL, podem retornar NULL, se o usuário não tiver permissão no objeto. Para obter mais informações, consulte Metadata Visibility Configuration.
Exemplos
a. Usando INDEX_COL para retornar um nome de coluna de índice
O exemplo a seguir retorna os nomes de coluna das duas colunas de chave no í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
Este é o conjunto de resultados:
Index Column 1 Index Column 2
-----------------------------------------------
SalesOrderID SalesOrderDetailID
Consulte Também
Expressões (Transact-SQL)
funções de metadados (Transact-SQL)
sys.indexes (Transact-SQL)
sys.index_columns (Transact-SQL)