oracle递归指定层级,oracle递归层级查询 start with ...... connect by prior
以部门表作为解析
表结构:dept{id:'主键',name:'部门名称',parent_id:'父亲id'}
select distinct id from dept where name=''
start with id=1 connect by prior id= parent_id
order siblings by id --排序
条件的优先级,根据start with后的条件查询第一条数据,然后根据connect by的条件,利用先决条件(start with)查询的child为起点作为下条数据的父节点递归查询所有的数据;
其中where是根据最后所有递归出的数据再进行过滤。
转自 https://blog.csdn.net/weixin_42508058/article/details/116471235
https://www.cnblogs.com/Faith-zhang/p/16179676.html