INDEX_COL (T-SQL)
Berlaku untuk: SQL ServerAzure SQL Database Azure SQL Managed Instance
Mengembalikan nama kolom terindeks. Mengembalikan NULL untuk indeks XML.
Sintaks
INDEX_COL ( '[ database_name . [ schema_name ] .| schema_name ]
table_or_view_name', index_id , key_id )
Argumen
database_name
Adalah nama database.
schema_name
Adalah nama skema tempat indeks berada.
table_or_view_name
Adalah nama tabel atau tampilan terindeks. table_or_view_name harus dibatasi oleh tanda kutip tunggal dan dapat sepenuhnya memenuhi syarat dengan nama database dan nama skema.
index_id
Adalah ID indeks. index_ID int.
key_id
Adalah posisi kolom kunci indeks. key_ID int.
Jenis Kembalian
nvarchar (128 )
Pengecualian
Mengembalikan NULL pada kesalahan atau jika penelepon tidak memiliki izin untuk melihat objek.
Pengguna hanya dapat melihat metadata yang dapat diamankan yang dimiliki pengguna atau di mana pengguna telah diberikan izin. Ini berarti bahwa fungsi bawaan yang memancarkan metadata seperti INDEX_COL dapat mengembalikan NULL jika pengguna tidak memiliki izin apa pun pada objek. Untuk informasi selengkapnya, lihat Konfigurasi Visibilitas Metadata.
Contoh
J. Menggunakan INDEX_COL untuk mengembalikan nama kolom indeks
Contoh berikut mengembalikan nama kolom dari dua kolom kunci dalam indeks 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
Berikut adalah hasilnya:
Index Column 1 Index Column 2
-----------------------------------------------
SalesOrderID SalesOrderDetailID
Lihat Juga
Ekspresi (Transact-SQL)
Fungsi Metadata (Transact-SQL)
sys.indexes (Transact-SQL)
sys.index_columns (T-SQL)