层次化查询得到所有的子代行

问题描述 投票:0回答:1

数据。

ID  PARENT_ID
1   [null]
2   1
3   1
4   2

希望的结果:

ID  CHILD_AT_ANY_LEVEL
1   2
1   3
1   4
2   4

我试过SYS_CONNECT_BY_PATH,但我不明白如何将结果转化为 "内联视图",以便与主表进行JOIN。

oracle oracle12c
1个回答
1
投票
select connect_by_root(id) id, id child_at_any_level
from table
where level <> 1
connect by prior id = parent_id;
© www.soinside.com 2019 - 2024. All rights reserved.