Database design 如何设计二叉树数据库?

Database design 如何设计二叉树数据库?,database-design,Database Design,我正在做一个关于.Net和SQL server的多级营销领域的项目。 在数据库中,它应该像二叉树一样保存。如何设计数据库?SQL Server 2008有一个内置的数据类型,名为存储层次结构信息。这里有一些提示 id | parentid | name --------------------- 1 | null | node1 2 | 1 | node2 3 | 1 | node3 当然,您也可以在sqlserver2008以外的数据库中执行上述操作

我正在做一个关于.Net和SQL server的多级营销领域的项目。
在数据库中,它应该像二叉树一样保存。如何设计数据库?

SQL Server 2008有一个内置的数据类型,名为存储层次结构信息。这里有一些提示

id | parentid | name
---------------------
 1 | null     | node1
 2 | 1        | node2
 3 | 1        | node3
当然,您也可以在sqlserver2008以外的数据库中执行上述操作。

这已经完成


下面是一个例子,解释了为什么arsenmkrt提出的邻接模型不太理想。

练习:编写一个查询,返回节点1的所有死者。你是说这个?select*From tab where parentid=select id From table where name='node1',这很搞笑:-不过,您可能应该指出一个更好的选择,比如使用嵌套集模型。对于Arsenmkrt-no,这将是直接的后代。有人问你所有的后代:@ChssPly76好吧,这很容易不?从选项卡中选择*名称!='节点1’;但说真的,这个答案怎么会有3张赞成票呢?+1我以前没想过这一点;