SQL:查找hierarchyid的最低公共祖先

时间:2012-06-20 12:53:09

标签: sql sql-server parent hierarchyid ancestor

我有一个包含(其中)值hierarchyids和Parent-hierarchyids的数据集。 对于另一个查询,我需要层次结构的最低共同祖先,因为我对sql和espacially hierarchyids相当新。

ID          HID         ParentHID
1           0x5CB280    0x5CA0
2           0x5CABBB08  0x5CABBA
3           0x5CB270    0x5CA0

1 个答案:

答案 0 :(得分:0)

假设您的层次结构没有严重的平衡偏差(例如列表),那么获得祖先链是很便宜的。接下来,您所要做的就是获取两个祖先链,进行集合交集,然后找到最长的层次结构ID。