相关疑难解决方法(0)

处理数据库中的层次结构数据

我很想知道处理层次结构的最佳方法(最佳实践)是关于数据库设计的.这是我通常如何处理它们的一个小例子.

节点表

NodeId int PRIMARY KEY
NodeParentId int NULL
DisplaySeq int NOT NULL
Title nvarchar(255)
Run Code Online (Sandbox Code Playgroud)

祖先表

NodeId int
AncestorId int
Hops int
Run Code Online (Sandbox Code Playgroud)

使用NodeId上的索引,AncestorId,Hops

表格如下所示:

节点表

NodeId    NodeParentId    DisplaySeq    Title
1         NULL            1             'Root'
2         1               1             'Child 1'
3         1               2             'Child 2'
4         2               1             'Grandchild 1'
5         2               2             'Grandchild 2'
Run Code Online (Sandbox Code Playgroud)

祖先表

NodeId    AncestorId    Hops
1         NULL          0
1         1             0
2         1             1
2         2             0
3         1             1
3         3             0
4         1             2
4         2 …
Run Code Online (Sandbox Code Playgroud)

sql hierarchical-data

7
推荐指数
3
解决办法
2494
查看次数

标签 统计

hierarchical-data ×1

sql ×1