Delen via


sys.index_columns (Transact-SQL)

van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)SQL-database in Microsoft Fabric

Bevat één rij per kolom die deel uitmaakt van een index of een niet-geordende tabel (heap).

Kolomnaam Gegevenstype Beschrijving
object_id Id van het object waarop de index is gedefinieerd.
index_id Id van de index waarin de kolom is gedefinieerd.
index_column_id Id van de indexkolom. index_column_id is alleen uniek binnen index_id.
column_id Id van de kolom in object_id.

0 = Rij-id (RID) in een niet-geclusterde index.

column_id is alleen uniek binnen object_id.
key_ordinal kleine Rangtelwoord (op basis van 1) binnen een set sleutelkolommen.

0 = Geen sleutelkolom of is een XML-index, een columnstore-index of een ruimtelijke index.

Opmerking: een XML- of ruimtelijke index kan geen sleutel zijn omdat de onderliggende kolommen niet vergelijkbaar zijn, wat betekent dat de waarden niet kunnen worden gerangschikt.
partition_ordinal kleine Rangschikking (op basis van 1) binnen een set partitioneringskolommen. Een geclusterde columnstore-index kan maximaal één partitioneringskolom hebben.

0 = Geen partitioneringskolom.
is_descending_key bit 1 = Indexsleutelkolom heeft een aflopende sorteerrichting.

0 = Indexsleutelkolom heeft een oplopende sorteerrichting of de kolom maakt deel uit van een columnstore of hash-index.
is_included_column bit 1 = Kolom is een niet-sleutelkolom die aan de index wordt toegevoegd met behulp van de COMPONENT CREATE INDEX INCLUDE of de kolom maakt deel uit van een columnstore-index.

0 = Kolom is geen opgenomen kolom.

Kolommen die impliciet zijn toegevoegd omdat ze deel uitmaken van de clustersleutel, worden niet vermeld in sys.index_columns.

Kolommen die impliciet worden toegevoegd omdat ze een partitioneringskolom zijn, worden geretourneerd als 0.
column_store_order_ordinal kleine van toepassing op: Azure Synapse Analytics, SQL Server 2022 (16.x), Azure SQL Database en Azure SQL Managed Instance met het Always-up-to-date updatebeleid

Rangnummer (op basis van 1) binnen een set orderkolommen in een geordende columnstore-index. Zie Prestaties afstemmen met geordende columnstore-indexenvoor meer informatie over geordende columnstore-indexen.

Machtigingen

De zichtbaarheid van de metagegevens in catalogusweergaven is beperkt tot beveiligbare items waarvan een gebruiker eigenaar is of waarvoor de gebruiker een bepaalde machtiging heeft gekregen. Zie Zichtbaarheidsconfiguratie voor metagegevensvoor meer informatie.

Voorbeelden

In het volgende voorbeeld worden alle indexen en indexkolommen voor de tabel geretourneerd Production.BillOfMaterials.

USE AdventureWorks2022;
GO
SELECT i.name AS index_name
    ,COL_NAME(ic.object_id,ic.column_id) AS column_name
    ,ic.index_column_id
    ,ic.key_ordinal
,ic.is_included_column
FROM sys.indexes AS i
INNER JOIN sys.index_columns AS ic
    ON i.object_id = ic.object_id AND i.index_id = ic.index_id
WHERE i.object_id = OBJECT_ID('Production.BillOfMaterials');

Dit is de resultatenset.

index_name                                                 column_name        index_column_id key_ordinal is_included_column
---------------------------------------------------------- -----------------  --------------- ----------- -------------
AK_BillOfMaterials_ProductAssemblyID_ComponentID_StartDate ProductAssemblyID  1               1           0
AK_BillOfMaterials_ProductAssemblyID_ComponentID_StartDate ComponentID        2               2           0
AK_BillOfMaterials_ProductAssemblyID_ComponentID_StartDate StartDate          3               3           0
PK_BillOfMaterials_BillOfMaterialsID                       BillOfMaterialsID  1               1           0
IX_BillOfMaterials_UnitMeasureCode                         UnitMeasureCode    1               1           0
  
(5 row(s) affected)

Volgende stappen