INDEXKEY_PROPERTY(Transact-SQL)
적용 대상: SQL Server Azure SQL Managed Instance
인덱스 키에 대한 정보를 반환합니다. XML 인덱스에 대해서는 NULL을 반환합니다.
Important
SQL Server의 이후 버전에서는 이 기능이 제거됩니다. 새 개발 작업에서는 이 기능을 사용하지 않도록 하고, 현재 이 기능을 사용하는 애플리케이션은 수정하세요. 대신 sys.index_columns(Transact-SQL)를 사용합니다.
구문
INDEXKEY_PROPERTY ( object_ID ,index_ID ,key_ID ,property )
인수
object_ID
테이블 또는 인덱싱된 뷰의 개체 ID입니다. object_ID 는 int입니다.
index_ID
인덱스 ID입니다. index_ID는 int입니다.
key_ID
인덱스 키 열 위치입니다. key_ID는 int입니다.
property
정보를 반환할 속성의 이름입니다. property는 문자열이며 다음 값 중 하나일 수 있습니다.
값 | Description |
---|---|
ColumnId | 인덱스의 key_ID위치에 있는 열 ID입니다. |
IsDescending | 인덱스 열이 저장되는 순서 1 = 내림차순 0 = 오름차순 |
반환 형식
int
예외
오류가 발생하거나 호출자가 개체를 볼 수 있는 권한을 갖고 있지 않으면 NULL을 반환합니다.
사용자는 소유하고 있거나 사용 권한을 부여 받은 보안 개체의 메타데이터만 볼 수 있습니다. 즉, 사용자가 개체에 대한 사용 권한이 없으면 INDEXKEY_PROPERTY와 같은 메타데이터 내보내기 기본 제공 함수가 NULL을 반환합니다. 자세한 내용은 Metadata Visibility Configuration을 참조하세요.
예제
다음 예에서는 1
테이블의 인덱스 ID 1
과 키 열 Production.Location
에 대해 두 속성이 반환됩니다.
USE AdventureWorks2022;
GO
SELECT
INDEXKEY_PROPERTY(OBJECT_ID('Production.Location', 'U'),
1,1,'ColumnId') AS [Column ID],
INDEXKEY_PROPERTY(OBJECT_ID('Production.Location', 'U'),
1,1,'IsDescending') AS [Asc or Desc order];
결과 집합은 다음과 같습니다.
Column ID Asc or Desc order
----------- -----------------
1 0
(1 row(s) affected)
참고 항목
INDEX_COL(Transact-SQL)
NDEXPROPERTY(Transact-SQL)
sys.objects(Transact-SQL)
sys.indexes(Transact-SQL)
sys.index_columns(Transact SQL)