Partager via


GetLevel (moteur de base de données)

Retourne un entier qui représente la profondeur du nœud this dans l'arborescence.

Syntaxe

-- Transact-SQL syntax
node.GetLevel ( ) 

-- CLR syntax
SqlInt16 GetLevel ( ) 

Types des valeurs de retour

Type de retour SQL Server : smallint

**Type de retour CLR :**SqlInt16

Notes

Sert à déterminer le niveau d'un ou plusieurs nœuds ou à filtrer les nœuds afin d'obtenir les membres d'un niveau spécifié. La racine de la hiérarchie est le niveau 0.

GetLevel est très utile pour les index de recherche à largeur prioritaire. Pour plus d'informations, consultez Utilisation des types de données hierarchyid (moteur de base de données).

Exemples

A. Retour du niveau hiérarchique en tant que colonne

L'exemple suivant retourne une représentation textuelle du hierarchyid, puis le niveau hiérarchique en tant que colonne EmpLevel pour toutes les lignes de la table :

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

B. Retour de tous les membres d'un niveau hiérarchique

L'exemple suivant retourne toutes les lignes de la table au niveau hiérarchique 2 :

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

C. Retour de la racine de la hiérarchie

L'exemple suivant retourne la racine du niveau hiérarchique :

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

D. Exemple CLR

L'extrait de code suivant appelle la méthode GetLevel() :

this.GetLevel()