一尘不染

Oracle中的简单递归查询

sql

我目前在理解和编写递归查询时遇到一些麻烦。我知道递归查询用于搜索信息层次结构,但是我还没有找到一个可以遍历层次结构的简单在线解决方案。例如,假设我有一个对家谱建模的关系:

create table family_tree (
child varchar(10)
parent varchar(10)
);

如果我想编写一个遍历此家谱的递归查询,收集所有父母直到出生,我该如何处理?

提前致谢。


阅读 121

收藏
2021-03-10

共1个答案

一尘不染

您可以使用connect by子句。

在您的情况下,SQL可能类似于:

select child, parent, level
from family_tree 
connect by prior parent = child
2021-03-10