적용 대상:SQL 서버
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
분석 플랫폼 시스템(PDW)
Microsoft Fabric의 SQL 데이터베이스
지정한 테이블 ID, 인덱스 또는 통계 이름, 속성 이름에 대해 명명된 인덱스 또는 통계 속성 값을 반환합니다. XML 인덱스에 대한 반환 NULL 입니다.
구문
INDEXPROPERTY ( object_ID , index_or_statistics_name , property )
인수
object_ID
인덱스 속성 정보를 제공할 테이블 또는 인덱싱된 뷰의 개체 ID 번호를 포함하는 식입니다. object_ID 는 int입니다.
index_or_statistics_name
속성 정보를 반환할 인덱스 또는 통계의 이름을 포함하는 식입니다. index_or_statistics_name은 nvarchar(128)입니다.
property
반환할 인덱스 또는 통계 속성의 이름을 포함하는 식입니다. property는 varchar(128)이며 다음 값 중 하나일 수 있습니다.
참고
달리 명시하지 않는 한 속성 NULL 이 유효한 속성 이름이 아니거나, object_ID 유효한 개체 ID가 아니거나, object_ID 지정된 속성에 대해 지원되지 않는 개체 형식이거나, 호출자에게 개체의 메타데이터를 볼 수 있는 권한이 없는 경우 반환됩니다.
| 속성 | 설명 | 값 |
|---|---|---|
IndexDepth |
인덱스의 깊이입니다. | 인덱스 수준의 수입니다.NULL = XML 인덱스 또는 입력이 잘못되었습니다. |
IndexFillFactor |
인덱스를 만들거나 최근에 다시 만들 때 사용한 채우기 비율 값입니다. | 채우기 비율 |
IndexID |
지정한 테이블 또는 인덱싱된 뷰에 대한 인덱스의 ID입니다. | 인덱스 ID |
IsAutoStatistics |
통계는 .의 AUTO_CREATE_STATISTICS옵션에 ALTER DATABASE 의해 생성되었습니다. |
1 = 참0 = False 또는 XML 인덱스입니다. |
IsClustered |
인덱스가 클러스터형입니다. |
1 = 참0 = False 또는 XML 인덱스입니다. |
IsDisabled |
인덱스가 비활성화되었습니다. |
1 = 참0 = 거짓NULL = 입력이 잘못되었습니다. |
IsFulltextKey |
인덱스가 테이블의 전체 텍스트 및 의미 체계 인덱싱 키입니다. |
1 = 참0 = False 또는 XML 인덱스입니다.NULL = 입력이 잘못되었습니다. |
IsHypothetical |
인덱스는 가상이며 데이터 액세스 경로로 직접 사용할 수 없습니다. 가상 인덱스는 열 수준 통계를 보유하며 데이터베이스 엔진 튜닝 관리자에서 유지 관리 및 사용됩니다. |
1 = 참0 = False 또는 XML 인덱스NULL = 입력이 잘못되었습니다. |
IsPadIndex |
인덱스가 각 하위 노드에 남겨 둘 빈 공간을 지정합니다. |
1 = 참0 = False 또는 XML 인덱스입니다. |
IsPageLockDisallowed |
옵션으로 설정된 ALLOW_PAGE_LOCKS 페이지 잠금 값입니다 ALTER INDEX. |
1 = 페이지 잠금이 허용되지 않습니다.0 = 페이지 잠금이 허용됩니다.NULL = 입력이 잘못되었습니다. |
IsRowLockDisallowed |
의 옵션ALLOW_ROW_LOCKS으로 ALTER INDEX 설정된 행 잠금 값입니다. |
1 = 행 잠금이 허용되지 않습니다.0 = 행 잠금이 허용됩니다.NULL = 입력이 잘못되었습니다. |
IsStatistics |
index_or_statistics_name 문 또는 옵션에 의해 CREATE STATISTICSAUTO_CREATE_STATISTICS 생성된 통계입니다 ALTER DATABASE. |
1 = 참0 = False 또는 XML 인덱스입니다. |
IsUnique |
인덱스가 고유합니다. |
1 = 참0 = False 또는 XML 인덱스입니다. |
IsColumnstore |
인덱스는 메모리 최적화 columnstore 인덱스입니다. |
1 = 참0 = 거짓적용 대상: SQL Server 2012(11.x) 이상 버전 |
IsOptimizedForSequentialKey |
인덱스에 대해 마지막 페이지 삽입 최적화가 사용됩니다. |
1 = 참0 = 거짓적용 대상: SQL Server 2019(15.x) 이상 버전 |
반환 형식
int
예외
오류가 발생하거나 호출자에게 개체를 볼 수 있는 권한이 없는 경우 반환 NULL 합니다.
사용자는 사용자가 소유하거나 사용자에게 사용 권한이 부여된 보안 개체의 메타데이터만 볼 수 있습니다. 즉, 사용자에게 개체에 대한 권한이 없는 경우 메타데이터 내보내기, 기본 제공 함수 등의 INDEXPROPERTY 함수가 반환 NULL 될 수 있습니다. 자세한 내용은 메타데이터 표시 유형 구성을 참조하세요.
예제
이 문서의 코드 샘플은 AdventureWorks2025 또는 AdventureWorksDW2025 샘플 데이터베이스를 사용합니다. 이 데이터베이스는 Microsoft SQL Server 샘플 및 커뮤니티 프로젝트 홈페이지에서 다운로드할 수 있습니다.
A. Employee 테이블의 인덱스 속성 반환
다음 예시는 AdventureWorks2025 IndexDepthIndexFillFactor 데이터베이스에서 테이블의 Employee 인덱스 , 속성 PK_Employee_BusinessEntityID 값을 반환합니다IsClustered.
SELECT
INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'), 'PK_Employee_BusinessEntityID', 'IsClustered') AS [Is Clustered],
INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'), 'PK_Employee_BusinessEntityID', 'IndexDepth') AS [Index Depth],
INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'), 'PK_Employee_BusinessEntityID', 'IndexFillFactor') AS [Fill Factor];
결과 집합은 다음과 같습니다.
Is Clustered Index Depth Fill Factor
------------ ----------- -----------
1 2 0
예: Azure Synapse Analytics 및 분석 플랫폼 시스템(PDW)
B. FactResellerSales 테이블의 인덱스에 대한 속성 반환
다음 예는 FactResellerSales 테이블의 색인 중 하나의 속성을 검사합니다.
SELECT
INDEXPROPERTY(OBJECT_ID('dbo.FactResellerSales'), 'ClusteredIndex_6d10fa223e5e4c1fbba087e29e16a7a2','IsClustered') AS [Is Clustered],
INDEXPROPERTY(OBJECT_ID('dbo.FactResellerSales'), 'ClusteredIndex_6d10fa223e5e4c1fbba087e29e16a7a2','IsColumnstore') AS [Is Columnstore Index],
INDEXPROPERTY(OBJECT_ID('dbo.FactResellerSales'), 'ClusteredIndex_6d10fa223e5e4c1fbba087e29e16a7a2','IndexFillFactor') AS [Fill Factor];
GO