INDEX_COL (Transact-SQL)

Применимо к:SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure

Возвращает имя индексированного столбца. Возвращает NULL для XML-индексов.

Соглашения о синтаксисе Transact-SQL

Синтаксис

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

Примечание.

Сведения о синтаксисе Transact-SQL для SQL Server 2014 (12.x) и более ранних версиях см . в документации по предыдущим версиям.

Аргументы

database_name
Имя базы данных.

schema_name
Имя схемы, которой принадлежит индекс.

table_or_view_name
Имя таблицы или индексированного представления. Аргумент table_or_view_name должен быть отделен одинарными кавычками и может полностью определяться именем базы данных и именем схемы.

index_id
Идентификатор индекса. Аргумент index_ID имеет тип int.

key_id
Позиция ключевого столбца индекса. Аргумент key_ID имеет тип int.

Типы возвращаемых данных

nvarchar (128)

Исключения

Возвращает значение NULL в случае ошибки или если участник не имеет разрешений для просмотра объекта.

Пользователь может просматривать только метаданные защищаемых объектов, которыми он владеет или на которые пользователю были предоставлены разрешения. Это означает, что встроенные функции по формированию метаданных, например INDEX_COL, могут вернуть значение NULL, если пользователь не имеет каких-либо разрешений на объект. Дополнительные сведения см. в разделе Metadata Visibility Configuration.

Примеры

А. Использование INDEX_COL для возвращения имени столбца индекса

В приведенном ниже примере возвращаются имена двух ключевых столбцов в индексе 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  

Результирующий набор:

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

См. также

Выражения (Transact-SQL)
Функции метаданных (Transact-SQL)
sys.indexes (Transact-SQL)
sys.index_columns (Transact-SQL)