如何在B树中获取给定父节点的子树

时间:2015-09-03 05:27:51

标签: mysql sql

假设我的表格tree包含idparent-id且数据为 b-tree

           1
    2             3
4   5   6      7   8  9

所有这些都存储在树表中,如

1 - null
2 - 1
3 - 1
4 - 2
5 - 2
6 - 2
7 - 3
8 - 3
9 - 3

所以请编写查询以获取2

的子树

输出应该像

4 - 2
5 - 2
6 - 2
xx - 4
etc..

1 个答案:

答案 0 :(得分:0)

从tablename中选择id,parent_id,其中parent_id = 2.也许你需要底层的?然后你需要自己连接表,只返回没有子节点的行。

编辑:如果层次结构级别的最大数量很高或未知,则应使用hierarchyid:https://msdn.microsoft.com/en-us/library/bb677213.aspx

希望这有帮助!