sys.indexes(Transact-SQL)sys.indexes (Transact-SQL)

적용 대상:Applies to: 예SQL ServerSQL Server(지원되는 모든 버전)yesSQL ServerSQL Server (all supported versions) 예Azure SQL DatabaseAzure SQL DatabaseYesAzure SQL DatabaseAzure SQL Database 예Azure SQL Managed InstanceAzure SQL Managed InstanceYesAzure SQL Managed InstanceAzure SQL Managed Instance 예Azure Synapse AnalyticsAzure Synapse AnalyticsyesAzure Synapse AnalyticsAzure Synapse Analytics 예병렬 데이터 웨어하우스Parallel Data Warehouseyes병렬 데이터 웨어하우스Parallel Data Warehouse적용 대상:Applies to: 예SQL ServerSQL Server(지원되는 모든 버전)yesSQL ServerSQL Server (all supported versions) 예Azure SQL DatabaseAzure SQL DatabaseYesAzure SQL DatabaseAzure SQL Database 예Azure SQL Managed InstanceAzure SQL Managed InstanceYesAzure SQL Managed InstanceAzure SQL Managed Instance 예Azure Synapse AnalyticsAzure Synapse AnalyticsyesAzure Synapse AnalyticsAzure Synapse Analytics 예병렬 데이터 웨어하우스Parallel Data Warehouseyes병렬 데이터 웨어하우스Parallel Data Warehouse

테이블, 뷰 또는 테이블 반환 함수와 같은 테이블 형식 개체의 인덱스 또는 힙당 하나의 행을 포함합니다.Contains a row per index or heap of a tabular object, such as a table, view, or table-valued function.

열 이름Column name 데이터 형식Data type DescriptionDescription
object_idobject_id intint 이 인덱스가 속한 개체의 ID입니다.ID of the object to which this index belongs.
namename sysnamesysname 인덱스의 이름입니다.Name of the index. 이름은 개체 내 에서만 고유 합니다.name is unique only within the object.

NULL = 힙NULL = Heap
index_idindex_id intint 인덱스의 ID입니다.ID of the index. index_id 는 개체 내 에서만 고유 합니다.index_id is unique only within the object.

0 = 힙0 = Heap

1 = 클러스터형 인덱스1 = Clustered index

> 1 = 비클러스터형 인덱스> 1 = Nonclustered index
typetype tinyinttinyint 인덱스의 유형입니다.Type of index:

0 = 힙0 = Heap

1 = 클러스터형1 = Clustered

2 = 비클러스터형2 = Nonclustered

3 = XML3 = XML

4 = 공간4 = Spatial

5 = 클러스터형 columnstore 인덱스5 = Clustered columnstore index. 적용 대상: SQL Server 2014(12.x)SQL Server 2014 (12.x) 이상Applies to: SQL Server 2014(12.x)SQL Server 2014 (12.x) and later.

6 = 비클러스터형 columnstore 인덱스입니다.6 = Nonclustered columnstore index. 적용 대상: SQL Server 2012(11.x)SQL Server 2012 (11.x) 이상Applies to: SQL Server 2012(11.x)SQL Server 2012 (11.x) and later.

7 = 비클러스터형 해시 인덱스입니다.7 = Nonclustered hash index. 적용 대상: SQL Server 2014(12.x)SQL Server 2014 (12.x) 이상Applies to: SQL Server 2014(12.x)SQL Server 2014 (12.x) and later.
type_desctype_desc nvarchar(60)nvarchar(60) 인덱스 유형의 설명입니다.Description of index type:

HEAPHEAP

CLUSTEREDCLUSTERED

NONCLUSTEREDNONCLUSTERED

XMLXML

SPATIALSPATIAL

클러스터형 COLUMNSTORE-다음 에 적용 됩니다. 이상에 적용됩니다 SQL Server 2014(12.x)SQL Server 2014 (12.x) .CLUSTERED COLUMNSTORE - Applies to: SQL Server 2014(12.x)SQL Server 2014 (12.x) and later.

비클러스터형 COLUMNSTORE- 이상에 적용 됩니다. SQL Server 2012(11.x)SQL Server 2012 (11.x)NONCLUSTERED COLUMNSTORE - Applies to: SQL Server 2012(11.x)SQL Server 2012 (11.x) and later.

비클러스터형 해시: 비클러스터형 해시 인덱스는 메모리 최적화 테이블 에서만 지원 됩니다.NONCLUSTERED HASH : NONCLUSTERED HASH indexes are supported only on memory-optimized tables. sys.hash_indexes 뷰는 현재 해시 인덱스 및 해시 속성을 보여 줍니다.The sys.hash_indexes view shows the current hash indexes and the hash properties. 자세한 내용은 hash_indexes (transact-sql)을 참조 하십시오.For more information, see sys.hash_indexes (Transact-SQL). 적용 대상: SQL Server 2014(12.x)SQL Server 2014 (12.x) 이상Applies to: SQL Server 2014(12.x)SQL Server 2014 (12.x) and later.
is_uniqueis_unique bitbit 1 = 인덱스가 고유합니다.1 = Index is unique.

0 = 인덱스가 고유하지 않습니다.0 = Index is not unique.

클러스터형 columnstore 인덱스의 경우 항상 0입니다.Always 0 for clustered columnstore indexes.
data_space_iddata_space_id intint 이 인덱스에 대한 데이터 공간의 ID입니다.ID of the data space for this index. 데이터 공간은 파일 그룹 또는 파티션 구성표입니다.Data space is either a filegroup or partition scheme.

0 = object_id 테이블 반환 함수 또는 메모리 내 인덱스입니다.0 = object_id is a table-valued function or in-memory index.
ignore_dup_keyignore_dup_key bitbit 1 = IGNORE_DUP_KEY가 ON입니다.1 = IGNORE_DUP_KEY is ON.

0 = IGNORE_DUP_KEY가 OFF입니다.0 = IGNORE_DUP_KEY is OFF.
is_primary_keyis_primary_key bitbit 1 = 인덱스가 PRIMARY KEY 제약 조건의 일부입니다.1 = Index is part of a PRIMARY KEY constraint.

클러스터형 columnstore 인덱스의 경우 항상 0입니다.Always 0 for clustered columnstore indexes.
is_unique_constraintis_unique_constraint bitbit 1 = 인덱스가 UNIQUE 제약 조건의 일부입니다.1 = Index is part of a UNIQUE constraint.

클러스터형 columnstore 인덱스의 경우 항상 0입니다.Always 0 for clustered columnstore indexes.
fill_factorfill_factor tinyinttinyint > 0 = 인덱스를 만들거나 다시 작성할 때 사용 되는 FILLFACTOR 백분율입니다.> 0 = FILLFACTOR percentage used when the index was created or rebuilt.

0 = 기본값0 = Default value

클러스터형 columnstore 인덱스의 경우 항상 0입니다.Always 0 for clustered columnstore indexes.
is_paddedis_padded bitbit 1 = PADINDEX가 ON입니다.1 = PADINDEX is ON.

0 = PADINDEX가 OFF입니다.0 = PADINDEX is OFF.

클러스터형 columnstore 인덱스의 경우 항상 0입니다.Always 0 for clustered columnstore indexes.
is_disabledis_disabled bitbit 1 = 인덱스가 비활성화되었습니다.1 = Index is disabled.

0 = 인덱스가 비활성화되지 않았습니다.0 = Index is not disabled.
is_hypotheticalis_hypothetical bitbit 1 = 인덱스가 가상 인덱스이며 데이터 액세스 경로로 직접 사용할 수 없습니다.1 = Index is hypothetical and cannot be used directly as a data access path. 가상 인덱스는 열 수준 통계를 보유합니다.Hypothetical indexes hold column-level statistics.

0 = 인덱스가 가상 인덱스입니다.0 = Index is not hypothetical.
allow_row_locksallow_row_locks bitbit 1 = 인덱스에서 행 잠금을 허용합니다.1 = Index allows row locks.

0 = 인덱스에서 행 잠금을 허용하지 않습니다.0 = Index does not allow row locks.

클러스터형 columnstore 인덱스의 경우 항상 0입니다.Always 0 for clustered columnstore indexes.
allow_page_locksallow_page_locks bitbit 1 = 인덱스에서 페이지 잠금을 허용합니다.1 = Index allows page locks.

0 = 인덱스에서 페이지 잠금을 허용하지 않습니다.0 = Index does not allow page locks.

클러스터형 columnstore 인덱스의 경우 항상 0입니다.Always 0 for clustered columnstore indexes.
has_filterhas_filter bitbit 1 = 인덱스에 필터가 있고 포함된 모든 행이 필터 정의를 만족합니다.1 = Index has a filter and only contains rows that satisfy the filter definition.

0 = 인덱스에 필터가 없습니다.0 = Index does not have a filter.
filter_definitionfilter_definition nvarchar(max)nvarchar(max) 필터링된 인덱스에 포함된 행 하위 집합에 대한 식입니다.Expression for the subset of rows included in the filtered index.

힙, 필터링 되지 않은 인덱스 또는 테이블에 대 한 권한이 부족 한 경우 NULL입니다.NULL for heap, non-filtered index, or insufficient permissions on the table.
auto_createdauto_created bitbit 1 = 자동 조정으로 인덱스를 만들었습니다.1 = Index was created by the automatic tuning.

0 = 사용자가 인덱스를 만들었습니다.0 = Index was created by the user.
optimize_for_sequential_keyoptimize_for_sequential_key bitbit 1 = 인덱스에서 마지막 페이지 삽입 최적화를 사용 하도록 설정 했습니다.1 = Index has last-page insert optimization enabled.

0 = 기본값0 = Default value. 인덱스에서 마지막 페이지 삽입 최적화를 사용할 수 없습니다.Index has last-page insert optimization disabled.

참고

Optimize_for_sequential_key 비트 SQL SERVER 2019 CTP 3.1 이상 버전 에서만 지원 됩니다.The optimize_for_sequential_key bit is only supported in versions SQL Server 2019 CTP 3.1 and higher.

권한Permissions

사용자가 소유하고 있거나 사용 권한을 부여 받은 보안 개체에 대해서만 카탈로그 뷰의 메타데이터를 볼 수 있습니다.The visibility of the metadata in catalog views is limited to securables that a user either owns or on which the user has been granted some permission. 자세한 내용은 Metadata Visibility Configuration을 참조하세요.For more information, see Metadata Visibility Configuration.

Examples

다음 예에서는 데이터베이스의 테이블에 대 한 모든 인덱스를 반환 합니다 Production.Product AdventureWorks2012AdventureWorks2012 .The following example returns all indexes for the table Production.Product in the AdventureWorks2012AdventureWorks2012 database.

  
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  
  

참고 항목See Also

Transact-sql)(개체 카탈로그 뷰 Object Catalog Views (Transact-SQL)
Transact-sql)(카탈로그 뷰 Catalog Views (Transact-SQL)
index_columns (Transact-sql) sys.index_columns (Transact-SQL)
Transact-sql)sys.xml_indexes ( sys.xml_indexes (Transact-SQL)
sys. 개체 (Transact-sql) sys.objects (Transact-SQL)
key_constraints (Transact-sql) sys.key_constraints (Transact-SQL)
sys. 파일 그룹 (Transact-sql) sys.filegroups (Transact-SQL)
partition_schemes (Transact-sql) sys.partition_schemes (Transact-SQL)
SQL Server 시스템 카탈로그 쿼리 FAQ Querying the SQL Server System Catalog FAQ
메모리 내 OLTP(메모리 내 최적화)In-Memory OLTP (In-Memory Optimization)