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/ (2 番目の子/最後の子) を返す必要があります。アイテムの場合、3 番目の子/最後の子を返す必要があります。

このクエリを試しました。しかし、それは私に最初の部分だけを返しています。

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 に答える