Oracle递归查询(入门篇)

来源:互联网 发布:剑三藏剑成男捏脸数据 编辑:程序博客网 时间:2024/05/21 07:13

现有如下表:test2


现在要递归查询WARD(id=2)的所有父节点和子节点:

select * from test2 start with id = 2 connect by prior pid = id --递归查询父节点
union
select * from test2 start with id = 2 connect by pid = prior id --递归查询子节点


查询结果:


当然,也可以使用in关键字递归查询多个节点的父节点和子节点:


select * from test2 start with id in (2,3) connect by prior pid = id --递归查询父节点
union
select * from test2 start with id in (2,3) connect by pid = prior id --递归查询子节点


查询结果:



补注:也可以加 where 和 and限制






原创粉丝点击