在嵌套集模型中,我们有LEFT和Right列
表格第一次为空时,我需要插入到RIGHT列,如果我不知道我有多少孩子
LEFT 1 - 永远
对吗? - 这里有什么价值?
如何让它动态化?不是静止的。
ps:使用php
答案 0 :(得分:6)
我假设你的标签和标题正在寻找适用于 MySQL 的解决方案。
是的,你是对的,除非你事先知道元素的数量,否则需要动态计算right
的值。您可以使用两种方法:
在这两种情况下,您都需要实现在插入新行时可能需要调整多行的left
和right
值,但在第二种情况下,您实际上只需要执行更新如果你猜对了所以第二种解决方案更复杂,但可以提供更好的性能。
请注意,在存储层次数据的四种常用方法中,嵌套集方法是执行插入和更新的最难。见Bill Karwin的Models for Heirarchical Data幻灯片69。