GetLevel (Mecanismo de Banco de Dados)

Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada de SQL do Azure

Retorna um inteiro que representa a profundidade do nó this na árvore.

Sintaxe

-- Transact-SQL syntax  
node.GetLevel ( )   
-- CLR syntax  
SqlInt16 GetLevel ( )   

Observação

Para exibir a sintaxe do Transact-SQL para o SQL Server 2014 (12.x) e versões anteriores, confira a Documentação das versões anteriores.

Tipos de retorno

Tipo de retorno do SQL Server: smallint

Tipo de retorno do CLR: SqlInt16

Comentários

Usado para determinar o nível de um ou mais nós ou para filtrar os nós de membros de um nível especificado. A raiz da hierarquia é nível 0.

GetLevel é útil para índices de pesquisa de primeira amplitude. Para obter mais informações, confira Dados Hierárquicos (SQL Server).

Exemplos

a. Retornando o nível de hierarquia como uma coluna

O seguinte exemplo retorna uma representação de texto da hierarchyid e, em seguida, o nível de hierarquia como a coluna EmpLevel para todas as linhas na tabela:

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

B. Retornando todos os membros de um nível de hierarquia

O seguinte exemplo retorna todas as linhas na tabela no nível de hierarquia 2:

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

C. Retornando a raiz da hierarquia

O seguinte exemplo retorna a raiz da árvore do nível de hierarquia:

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

D. Exemplo de CLR

O seguinte snippet de código chama o método GetLevel():

this.GetLevel()  

Confira também

Referência de método de tipo de dados hierarchyid
Dados hierárquicos (SQL Server)
hierarchyid (Transact-SQL)