sys.index_columns(Transact SQL)

적용 대상: 예SQL Server(지원되는 모든 버전) 예Azure SQL Database 예Azure SQL Managed Instance 예Azure Synapse Analytics 예병렬 데이터 웨어하우스

열 하나를 포함 하는 열에는 열 을 포함 합니다.

열 이름 데이터 형식 Description
object_id int 인덱스가 정의되는 개체의 ID입니다.
index_id int 열이 정의되는 인덱스의 ID입니다.
index_column_id int 인덱스 열의 ID입니다. index_column_idindex_id 내 에서만 고유 합니다.
column_id int Object_id 열의 ID입니다.

0 = 비클러스터형 인덱스의 RID(행 식별자)

column_idobject_id 내 에서만 고유 합니다.
key_ordinal tinyint 키 열 집합 내에서의 서수(1부터 시작)입니다.

0 = 키 열이 아니거나, XML 인덱스, columnstore 인덱스 또는 공간 인덱스입니다.

참고: 기본 열을 비교할 수 없기 때문에 XML 또는 공간 인덱스는 키가 될 수 없습니다. 즉, 해당 값을 정렬할 수 없습니다.
partition_ordinal tinyint 분할 열 집합 내에 있는 서수(1부터 시작)입니다. 클러스터형 columnstore 인덱스는 하나의 분할 열만 가질 수 있습니다.

0 = 분할 열 아님
is_descending_key bit 1 = 인덱스 키 열이 내림차순으로 정렬됩니다.

0 = 인덱스 키 열이 오름차순으로 정렬되거나 열이 columnstore 또는 해시 인덱스의 일부입니다.
is_included_column bit 1 = 열이 CREATE INDEX INCLUDE 절을 사용하여 인덱스에 추가된 키가 아닌 열이거나 columnstore 인덱스의 일부인 열입니다.

0 = 열이 포괄 열이 아닙니다.

클러스터링 키의 일부 이므로 암시적으로 추가 된 열은 sys.index_columns 에 나열 되지 않습니다.

분할 열이어서 암시적으로 추가된 열은 0으로 반환됩니다.
column_store_order_ordinal
적용 대상: Azure Synapse Analytics (미리 보기)
tinyint 순서가 지정 된 클러스터형 columnstore 인덱스의 순서 열 집합 내에서의 서 수 (1부터 기반)입니다.

사용 권한

사용자가 소유하고 있거나 사용 권한을 부여 받은 보안 개체에 대해서만 카탈로그 뷰의 메타데이터를 볼 수 있습니다. 자세한 내용은 Metadata Visibility Configuration을 참조하세요.

예제

다음 예는 Production.BillOfMaterials 테이블에 대한 모든 인덱스 및 인덱스 열을 반환합니다.

USE AdventureWorks2012;  
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');  
  

결과 집합은 다음과 같습니다.

  
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)  
  

참고 항목

개체 카탈로그 뷰 (Transact-SQL)
카탈로그 뷰(Transact-SQL)
sys.indexes(Transact-SQL)
sys.objects(Transact-SQL)
CREATE INDEX(Transact-SQL)
sys.columns(Transact-SQL)
SQL Server 시스템 카탈로그 쿼리에 대한 질문과 대답