我正在阅读此链接managing hierarchical data in mysql,因为我正在做MLM项目。示例显示了这一点。



但是我对lft和rgt感到困惑。我想输入在MLM中注册的会员的ID。我只是按照示例的模式在mysql中管理分层数据。

这样的东西,所以lft和rgt值是我已注册成员的ID。

tree_table

id    parentid         lft       rgt

1        1              2         3

2        3              4          5

3        4              6           7

4        7              8           9


我运行这个SQL

 SELECT node.parentid,node.lft,node.rgt
    FROM tree_table AS node,
            tree_table AS parent
    WHERE node.lft BETWEEN parent.lft AND parent.rgt
      AND parent.parentid = '1'
    ORDER BY node.lft;


但这只给了我1条记录,没有显示他的所有孩子或下线。这是输出

 parentid   lft   rgt
   1         2     3


这是我的结构表

CREATE TABLE `tree_table` (
    `id` INT(11) NOT NULL AUTO_INCREMENT,
    `parentid` INT(11) NOT NULL DEFAULT '0',
    `lft` INT(11) NOT NULL DEFAULT '0',
    `rgt` INT(11) NOT NULL DEFAULT '0',
    PRIMARY KEY (`id`)
)


请先帮助我,谢谢。

最佳答案

尝试在查询中删除“ and parent.parent.id = 1”。数据是一组嵌套的celko树。

10-04 10:20