GetLevel (Database Engine)
傳回代表樹狀結構中 this 節點深度的整數。
語法
-- Transact-SQL syntax
node.GetLevel ( )
-- CLR syntax
SqlInt16 GetLevel ( )
傳回類型
**SQL Server 傳回類型:**smallint
**CLR 傳回類型:**SqlInt16
備註
用來判斷一或多個節點的層級,或是將節點篩選至指定之層級的成員。此階層的根節點為層級 0。
GetLevel 對於廣度優先的搜尋索引非常有用。如需詳細資訊,請參閱<使用 hierarchyid 資料類型 (Database Engine)>。
範例
A. 以資料行形式傳回階層層級
下列範例會傳回 hierarchyid 的文字表示法,然後針對資料表中的所有資料列傳回 EmpLevel 資料行形式的階層層級:
SELECT OrgNode.ToString() AS Text_OrgNode,
OrgNode.GetLevel() AS EmpLevel, *
FROM HumanResources.EmployeeDemo
B. 傳回階層層級的所有成員
下列範例會傳回資料表中階層層級 2 的所有資料列:
SELECT OrgNode.ToString() AS Text_OrgNode,
OrgNode.GetLevel() AS EmpLevel, *
FROM HumanResources.EmployeeDemo
WHERE OrgNode.GetLevel() = 2
C. 傳回階層的根節點
下列範例會傳回此階層層級的根節點:
SELECT OrgNode.ToString() AS Text_OrgNode,
OrgNode.GetLevel() AS EmpLevel, *
FROM HumanResources.EmployeeDemo
WHERE OrgNode.GetLevel() = 0
D. CLR 範例
下列程式碼片段會呼叫 GetLevel() 方法:
this.GetLevel()