在我的应用程序中,用户启动一个新树或添加到一个子用户下,并继续以这种方式在分支机构中添加用户 -
>
有10级树型结构
>
根节点包含1
用户,每个节点(用户)可以拥有 max 5
子用户,这样树就像level 0 = 1 user
,
level 1 = 5 user
,
level 2 = 25 user
,
level 3 = 125 user
等等。
我创建了一个包含像
这样的列的MySQL表 User_id
,level
,super_id
,child1_id
,child2_id
,child3_id
,child4_id
,child5_id
我的问题是如何在任何级别获取特定用户的所有子用户(child to child also
)我是否需要在我的表中添加更多列?
答案 0 :(得分:3)
您可能会发现从上周的PHP TEK-X会议上阅读我的演示文稿很有意思:
本讲座描述了SQL中的替代解决方案,包括:
另请参阅我对此Stack Overflow问题的回答:What is the most efficient/elegant way to parse a flat table into a tree?
答案 1 :(得分:-1)
您应该查看Nested Sets。
在PHP中,您可以使用Doctrine Nested Sets,这将使您的生活更轻松。
答案 2 :(得分:-1)
这是我用来构建二叉树数据结构及其相应操作的完整代码: