Compartir a través de


GetLevel (motor de base de datos)

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 valores devueltos

**Tipo de valor devuelto de SQL Server:**smallint

**Tipo de valor devuelto de CLR:**SqlInt16

Notas

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 para los índices de búsqueda con prioridad a la amplitud. Para obtener más información, vea Uso de los tipos de datos hierarchyid (Motor de base de datos).

Ejemplos

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

El ejemplo siguiente devuelve una representación de texto del objeto hierarchyid y, a continuación, 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 fragmento de código siguiente se llama al método GetLevel():

this.GetLevel()