2015-06-21 74 views
0

我在我的表中有這樣的hierarchyid。從sql hierarchyid獲取最後一個孩子

/1/ - This is Category 
/1/1/ - This is SubCategory 
/1/1/1/ - This is Item 
/1/1/2/ - Item 
/1/1/3/ - Item 
/1/2/ - SubCategory 
/1/2/1/ - Item 
/1/2/2/ - Item 
/1/2/3 - Item 

我想最後的兒童,無論使用SQL查詢類別,子類別或項目。例如: 如果它的類別,它會返回/ 1 /;如果它是子類別它應該返回/ 1 /或/ 2 /(第二個孩子/最後一個孩子);如果是Item,它應該返回第3個孩子/最後一個孩子。

我試過這個查詢。但是,它只是返回我的第一部分。

SELECT PricedItemHID.GetAncestor(PricedItemHID.GetLevel() -1) FROM ItemsList 
+0

你真的存儲數據斜線分開,如 '/ 1/1 /'? (或者它是否分解了列?) – jarlh

+0

SQL Server 2008上的HierarchyID數據類型;它像這樣存儲。 –

+1

我明白了。謝謝回答! (我不太瞭解SQL Server ......) – jarlh

回答