[英]Sql recursive query to read hierarchical data
我正在尝试提出一个SQL查询来读取递归数据,如下所示:
ParentId ChildId
1 2
2 3
3 4
4 5
4 6
8 9
如果提供了ParentId
,则查询应以递归方式返回所有ChildId
。
示例: parentId =1
, result = {2, 3, 4, 5, 6}
parentId =1
result = {2, 3, 4, 5, 6}
我发现connect_by_root
和connect by prior
是我可能应该使用的。 但是,我无法解决问题。
数据库:Oracle和Db2
这应该可以解决问题:
SELECT ChildId, ParentId, LEVEL
FROM myTable
CONNECT BY PRIOR ChildId = ParentId;
做到了:
SELECT childid
FROM btab
START WITH parentId = 1
CONNECT BY PRIOR childId = parentId;
感谢#Bulat和#AngocA,为指针
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.