다음을 통해 공유


sys.index_columns(Transact SQL)

sys.indexes 인덱스 또는 정렬되지 않은 테이블(힙)의 일부인 열 하나당 하나의 행을 포함합니다.

적용 대상: SQL Server(SQL Server 2008 - 현재 버전), Windows Azure SQL 데이터베이스(최초 릴리스 - 현재 릴리스)

열 이름

데이터 형식

설명

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으로 반환됩니다.

사용 권한

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

다음 예는 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 시스템 카탈로그 쿼리에 대한 질문과 대답