千家信息网

oracle表中树形结构与分级查询

发表于:2025-01-22 作者:千家信息网编辑
千家信息网最后更新 2025年01月22日,1.此处以emp表为例 此表中 empno 字段与 mgr 字段存在 下级与上级关系2从上往下查 最顶级的boss 此处的level是三大伪列之一 级别select level,empno,ename
千家信息网最后更新 2025年01月22日oracle表中树形结构与分级查询

1.此处以emp表为例 此表中 empno 字段与 mgr 字段存在 下级与上级关系

2从上往下查 最顶级的boss 此处的level是三大伪列之一 级别
select level,empno,ename,mgr from emp
start with empno=7839 --下级字段
connect by prior empno=mgr; --下级字段=上级字段

3 从下往上查
select level,empno,ename,mgr from emp
start with empno=7369 --下级字段
connect by prior mgr=empno; --上级字段=下级字段

4 --只是过滤单个节点 该节点下的都保留了
select level,empno,ename,mgr from emp
where empno<>7698 --下级字段
start with empno=7839
connect by prior empno=mgr; --下级字段=上级字段

5 --过滤整个分支
select level,empno,ename,mgr from emp
start with empno=7839 --下级字段
connect by prior empno=mgr and empno<>7698; --下级字段=上级字段

0