Compartir vía


GetLevel (motor de base de datos)

se aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL Database en Microsoft Fabric

Devuelve un entero que representa la profundidad del nodo this en el árbol.

Sintaxis

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

Tipos de valor devuelto

Tipo de valor devuelto de SQL Server: smallint

Tipo de valor devuelto de CLR: SqlInt16

Observaciones

Se utiliza para determinar el nivel de uno o más nodos o para filtrar los nodos a los miembros de un nivel especificado. La raíz del árbol de jerarquía tiene el nivel 0.

GetLevel resulta muy útil en los índices de búsqueda con prioridad a la amplitud. Para obtener más información, consulte Datos jerárquicos (SQL Server).

Ejemplos

A. Devolver el nivel de jerarquía como una columna

En el siguiente ejemplo se devuelve una representación de texto del objeto hierarchyid y, después, el nivel de jerarquía como la columna EmpLevel para todas las filas de la tabla:

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

B. Devolver todos los miembros de un nivel de jerarquía

El ejemplo siguiente devuelve todas las filas de la tabla que están en el nivel de jerarquía 2:

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

C. Devolver la raíz de la jerarquía

El ejemplo siguiente devuelve la raíz del nivel de jerarquía:

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

D. Ejemplo de CLR

En el siguiente fragmento de código se llama al método GetLevel():

this.GetLevel()  

Consulte también

Referencia de los métodos del tipo de datos hierarchyid
Datos jerárquicos (SQL Server)
hierarchyid (Transact-SQL)