我有一个 MySQL 数据库,我将用户记录存储在下面的表结构中
User_mst
-------------------
id
user_name
parent_id
left_id
right_id
position (keyword "left", "right" as string)
node_level
我将用户记录存储在二叉树结构中,这意味着每个节点(用户)下最多有 2 个子节点。
从这个结构中,我想创建一个具有
输入:
1.user_id
2.level
3.position
输出应该是:
user_id
给定level
和给定下的节点数position
。
因此,例如,如果功能如下所示
get_nodes(3, 4, 'left');
然后它应该返回: Level 4上User ID 3下有X个节点
我认为我必须构建一个将递归处理的函数,尽管我想要建议。
请帮我建立这个功能。使用任何编程语言,如 C、PHP 等。我只是在这里寻找逻辑。
下面是创建表的 SQL 和一些示例插入语句:
http://paste.ubuntu.com/1218345/
提前致谢