0

我的表中有这样的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 它应该返回第三个孩子/最后一个孩子。

我试过这个查询。但是,它只返回我的第一部分。

SELECT PricedItemHID.GetAncestor(PricedItemHID.GetLevel() -1) FROM ItemsList
4

1 回答 1

2

你可以使用这样的东西:

Select @MaxChild = Max(OrgNode) from HumanResources.EmployeeDemo

这个链接可以帮助你[ http://blogs.msdn.com/b/manisblog/archive/2007/08/28/sql-server-2008-hierarchyid-part-ii.aspx][1]

于 2015-10-12T06:38:27.950 回答