递归父子关系?

时间:2015-04-15 18:30:44

标签: sql sql-server-2008

我有一张像

这样的表格
SourceClass | TargetClass | SourceID | TargetID
------------------------------------------------
A           | B           | 2         | 2
B           | C           | 2         | 2
C           | D           | 2         | 3
D           | E           | 2         | 4
B           | C           | 3         | 3

我正在尝试定义查询但没有成功使用,如果我指定任何子/父SourceClass或SourceID,它应该返回该值的所有父项和子项。

例如:如果我指定SourceClass = B和SourceID = 2.

它应该返回SourceClass = B的所有链接子节点和父节点,SourceID = 2。

对于上述值,它应该返回

SourceClass | TargetClass | SourceID | TargetID
------------------------------------------------
A           | B           | 2         | 2
B           | C           | 2         | 2
C           | D           | 2         | 3
D           | E           | 2         | 4

1 个答案:

答案 0 :(得分:0)

您可以使用邻接列表模型来获取HIERARCHICAL DATA。 查看此link参考