类别偏移

时间:2009-10-21 15:03:12

标签: php mysql

我即将建立一个SQL数据库,我需要做到正确,而不是犯错并修复它们,这就是我在这里的原因......

我将拥有主要类别和子类别,我需要知道天气最好将子类别存储在与主要相同的表中,但只是将它们偏移,例如:

Protein | Fat Loss | (two main categories)
Whey    | example  | (these would be linked)

我正在考虑像这样设计表格:

cid, name, lcid (linked number)

因此,如果lcid设置为0,那么它是一个主要类别,但如果它有一个与cid有关的数字,那么它就是一个子类别。

然后我会使用php将它们链接在一起并显示它们。

1 个答案:

答案 0 :(得分:1)

您所谈论的内容称为Adjacency List。它对于创建经常更改但不必提供大量信息的层次结构非常有用。但是,如果您的层次结构更改频率较低,但必须回答“此节点具有多少兄弟/祖先”等问题,则嵌套集模型会更好。看看here是否有利弊的描述。