적용 대상:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
분석 플랫폼 시스템(PDW)
Microsoft Fabric 미리 보기의 SQL 데이터베이스
테이블, 뷰 또는 테이블 반환 함수와 같은 테이블 형식 개체의 인덱스 또는 힙당 하나의 행을 포함합니다.
열 이름 | 데이터 형식 | Description |
---|---|---|
object_id |
int | 이 인덱스가 속한 개체의 ID입니다. |
name |
sysname | 인덱스의 이름입니다. 이름은 개체 내에서만 고유합니다. NULL = 힙 |
index_id |
int | 인덱스의 ID입니다. index_id 개체 내에서만 고유합니다. 0 = 힙 1 = 클러스터형 인덱스 > 1 = 비클러스터형 인덱스 |
type |
tinyint | 인덱스 유형: 0 = 힙 1 = 클러스터형 rowstore(B-트리) 2 = 비클러스터형 rowstore(B-트리) 3 = XML 4 = 공간 5 = 클러스터형 columnstore 인덱스 2 6 = 비클러스터형 columnstore 인덱스 1 7 = 비클러스터형 해시 인덱스 2 9 = JSON 5 |
type_desc |
nvarchar(60) | 인덱스 유형에 대한 설명: -힙 -클러스터형 - 비클러스터형 - XML -공간의 - CLUSTERED COLUMNSTORE 2 - 비클러스터형 COLUMNSTORE 1 - 비클러스터형 해시 2, 8 - JSON 5 |
is_unique |
bit | 1 = 인덱스가 고유합니다. 0 = 인덱스가 고유하지 않습니다. 클러스터형 columnstore 인덱스의 경우 항상 0입니다. |
data_space_id |
int | 이 인덱스의 데이터 공간 ID입니다. 데이터 공간은 파일 그룹 또는 파티션 구성표입니다. 0 = object_id 테이블 반환 함수 또는 메모리 내 인덱스입니다. |
ignore_dup_key |
bit | 1 = IGNORE_DUP_KEY OFF입니다. 0 = IGNORE_DUP_KEY OFF입니다. |
is_primary_key |
bit | 1 = 인덱스가 PRIMARY KEY 제약 조건의 일부입니다. 클러스터형 columnstore 인덱스의 경우 항상 0입니다. |
is_unique_constraint |
bit | 1 = 인덱스가 UNIQUE 제약 조건의 일부입니다. 클러스터형 columnstore 인덱스의 경우 항상 0입니다. |
fill_factor |
tinyint |
> 0 = 인덱스를 만들거나 다시 작성할 때 사용된 FILLFACTOR 백분율입니다. 0 = 기본값 클러스터형 columnstore 인덱스의 경우 항상 0입니다. |
is_padded |
bit | 1 = PADINDEX가 OFF입니다. 0 = PADINDEX가 OFF입니다. 클러스터형 columnstore 인덱스의 경우 항상 0입니다. |
is_disabled |
bit | 1 = 인덱스가 비활성화되었습니다. 0 = 인덱스가 비활성화되지 않았습니다. |
is_hypothetical |
bit | 1 = 인덱스는 가상이며 데이터 액세스 경로로 직접 사용할 수 없습니다. 가상 인덱스는 열 수준 통계를 보유합니다. 0 = 인덱스가 가상이 아닙니다. |
allow_row_locks |
bit | 1 = 인덱스에서 행 잠금을 허용합니다. 0 = 인덱스는 행 잠금을 허용하지 않습니다. 클러스터형 columnstore 인덱스의 경우 항상 0입니다. |
allow_page_locks |
bit | 1 = 인덱스는 페이지 잠금을 허용합니다. 0 = 인덱스는 페이지 잠금을 허용하지 않습니다. 클러스터형 columnstore 인덱스의 경우 항상 0입니다. |
has_filter |
bit | 1 = 인덱스에는 필터가 있으며 필터 정의를 충족하는 행만 포함됩니다. 0 = 인덱스 필터가 없습니다. |
filter_definition |
nvarchar(max) | 필터링된 인덱스에 포함된 행의 하위 집합에 대한 식입니다. 힙, 필터링되지 않은 인덱스 또는 테이블에 대한 권한이 부족한 경우 NULL입니다. |
compression_delay |
int |
> 0 = Columnstore 인덱스 압축 지연 시간(분)입니다. NULL = Columnstore 인덱스 행 그룹 압축 지연이 자동으로 관리됩니다. |
suppress_dup_key_messages
3, 6, 7 |
bit | 1 = 인덱스 다시 작성 작업 중에 중복 키 메시지를 표시하지 않는 인덱스가 구성됩니다. 0 = 인덱스 다시 작성 작업 중에 중복 키 메시지를 표시하지 않도록 인덱스가 구성되지 않았습니다. |
auto_created
6 |
bit | 1 = 자동 튜닝을 통해 인덱스가 생성되었습니다. 0 = 사용자가 인덱스가 생성되었습니다. |
optimize_for_sequential_key
4, 6, 7 |
bit | 1 = 인덱스가 마지막 페이지 삽입 최적화를 사용하도록 설정했습니다. 0 = 기본값입니다. 인덱스가 마지막 페이지 삽입 최적화를 사용하지 않도록 설정했습니다. |
1적용 대상: SQL Server 2012(11.x) 이상 버전.
2적용 대상: SQL Server 2014(12.x) 이상 버전.
3적용 대상: SQL Server 2017(14.x) 이상 버전.
4적용 대상: SQL Server 2019(15.x) 이상 버전.
5적용 대상: SQL Server 2025(17.x) 미리 보기 이상 버전.
6적용 대상: Azure SQL Database.
7적용 대상: Azure SQL Managed Instance.
8NONCLUSTERED HASH
개의 인덱스는 메모리 최적화 테이블에서만 지원됩니다. 보기에는 sys.hash_indexes
현재 해시 인덱스 및 해시 속성이 표시됩니다. 자세한 내용은 sys.hash_indexes 참조하세요.
Permissions
사용자가 소유하고 있거나 사용 권한을 부여 받은 보안 개체에 대해서만 카탈로그 뷰의 메타데이터를 볼 수 있습니다. 자세한 내용은 메타데이터 표시 유형 구성을 참조하세요.
Examples
다음 예제에서는 AdventureWorks2022 데이터베이스의 테이블에 Production.Product
대한 모든 인덱스를 반환합니다.
SELECT i.name AS index_name,
i.type_desc,
is_unique,
ds.type_desc AS filegroup_or_partition_scheme,
ds.name AS filegroup_or_partition_scheme_name,
ignore_dup_key,
is_primary_key,
is_unique_constraint,
fill_factor,
is_padded,
is_disabled,
allow_row_locks,
allow_page_locks
FROM sys.indexes AS i
INNER JOIN sys.data_spaces AS ds
ON i.data_space_id = ds.data_space_id
WHERE is_hypothetical = 0
AND i.index_id <> 0
AND i.object_id = OBJECT_ID('Production.Product');
GO