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

posted @ 2022-10-27 14:55  酸牛奶  阅读(112)  评论(0编辑  收藏  举报