Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL-databas i Microsoft Fabric
Returnerar det indexerade kolumnnamnet. Returnerar NULL för XML-index.
Transact-SQL syntaxkonventioner
Syntax
INDEX_COL ( '[ database_name . [ schema_name ] .| schema_name ]
table_or_view_name', index_id , key_id )
Arguments
database_name
Är namnet på databasen.
schema_name
Är namnet på schemat som indexet tillhör.
table_or_view_name
Är namnet på tabellen eller den indexerade vyn.
table_or_view_name måste avgränsas med enkla citattecken och kan vara fullt kvalificerad med databasnamn och schemanamn.
index_id
Är indexets ID.
index_ID är int.
key_id
Är kolumnpositionen för indexnyckeln.
key_ID är int.
Returtyper
Nvarchar (128)
Exceptions
Returnerar NULL vid fel eller om en anropare inte har behörighet att visa objektet.
En användare kan bara visa metadata för skyddsbara filer som användaren äger eller som användaren har beviljats behörighet för. Detta innebär att inbyggda funktioner som INDEX_COL metadata kan returnera NULL om användaren inte har några behörigheter på objektet. För mer information, se inställningar för metadatasynlighet.
Examples
A. Att använda INDEX_COL för att returnera ett kolumnnamn i index
Följande exempel återger kolumnnamnen för de två nyckelkolumnerna i indexet 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
Här är resultatmängden:
Index Column 1 Index Column 2
-----------------------------------------------
SalesOrderID SalesOrderDetailID
Se även
Uttryck (Transact-SQL)
Metadata functions (Transact-SQL)
sys.indexes (Transact-SQL)
sys.index_columns (Transact-SQL)