다음을 통해 공유


GetLevel(데이터베이스 엔진)

트리에서 노드 this의 깊이를 나타내는 정수를 반환합니다.

구문

-- Transact-SQL syntax
node.GetLevel ( ) 

-- CLR syntax
SqlInt16 GetLevel ( ) 

반환 형식

**SQL Server 반환 형식:**smallint

**CLR 반환 형식:**SqlInt16

주의

하나 이상의 노드 수준을 확인하거나 지정된 수준의 멤버로 노드를 필터링하는 데 사용됩니다. 계층의 루트는 수준 0입니다.

GetLevel은 너비 우선 검색 인덱스에 매우 유용합니다. 자세한 내용은 hierarchyid 데이터 형식 사용(데이터베이스 엔진)을 참조하십시오.

1. 계층 수준을 열로 반환

다음 예에서는 hierarchyid의 텍스트 표현을 반환한 다음 계층 수준을 테이블의 모든 행에 대한 EmpLevel 열로 반환합니다.

SELECT OrgNode.ToString() AS Text_OrgNode, 
OrgNode.GetLevel() AS EmpLevel, *
FROM HumanResources.EmployeeDemo

2. 계층 수준의 모든 멤버 반환

다음 예에서는 계층 수준 2에 있는 테이블의 모든 행을 반환합니다.

SELECT OrgNode.ToString() AS Text_OrgNode, 
OrgNode.GetLevel() AS EmpLevel, *
FROM HumanResources.EmployeeDemo
WHERE OrgNode.GetLevel() = 2

3. 계층의 루트 반환

다음 예에서는 계층 수준의 루트를 반환합니다.

SELECT OrgNode.ToString() AS Text_OrgNode, 
OrgNode.GetLevel() AS EmpLevel, *
FROM HumanResources.EmployeeDemo
WHERE OrgNode.GetLevel() = 0

4. CLR 예

다음 코드 조각에서는 GetLevel() 메서드를 호출합니다.

this.GetLevel()