我有一个如下所示的父子关系表。我想检索所有父或子ID的记录,例如所有祖先和父母以及如果可能的话,深度也要一并返回。 例如,我想找到D家族,它将返回前14行,因为它们都是同一个家族的成员。 可能会有几组这样的家族。我想查询一个成员并想要获取整个家族记录。是否可以使用CTE实现这一点? 表中记录的家族结构如下:
A
/ \
B C G J
/ \ / \ / \
M D E H K
/ \ / \ / \
N F I L
R
|
S U
\ /
T
请帮忙。 表格如下:
Parent Child
------ ------
A B
A C
B D
D F
M F
M N
C E
G E
G H
J H
J K
H I
K I
K L
R S
S T
U T
感谢您,Himadri。
rCTE
进展的同时,我卡在了高效地记录遍历历史(并查询它)上。最终采用了这里建议的WHILE
循环:http://hansolav.net/sql/graphs.html - 我会关注这篇文章,看看会有什么结果。 - MarkD