【发布时间】:2010-02-23 14:10:49
【问题描述】:
我正在努力在 MySQL 中构建树形结构,并且一直在尝试不同的数据表示方式。但是,无论我怎么切,都有不足之处。
嵌套集模型允许我轻松选择树的整个分支 - 这是我需要做的。然而,选择一个节点的直接子节点并不容易。
邻接表模型非常适合获取直系子节点,但不适用于返回整个树的分支。
我想知道,构建这样的树结构有什么特别不好的地方:
TABLE: Tree
ID
name
lft
rgt
parentID
所以我拥有的是邻接表模型和嵌套集模型都在同一个表中。这样我就可以使用/或,这取决于我选择的情况。
人们的想法是什么?这是允许的吗? (花生酱和巧克力终于在一起了?)或者这被认为是糟糕的设计?
提前致谢,
【问题讨论】:
-
您是否也考虑过构建传递闭包?
标签: mysql nested-sets adjacency-list