oracle 父子关系

Posted 小杉儿

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle 父子关系相关的知识,希望对你有一定的参考价值。

语句递归查找父子关系语句

表结构及数据

1.通过根节点遍历子节点

select t.*,LEVEL from Test2 t START WITH t.parentid=0 CONNECT BY PRIOR t.id = t.parentid

2.通过子节点向根节点追溯

select t.*,LEVEL from Test2 t START WITH t.id=\'13\' CONNECT BY PRIOR t.parentid = t.id

3.查找直接子节点(下一层)

select t.*,LEVEL from Test2 t where LEVEL = 2 START WITH t.parentid=0 CONNECT BY PRIOR t.id = t.parentid

 

4.查找孙节点

select t.*,LEVEL from Test2 t where LEVEL = 3 START WITH t.parentid=0 CONNECT BY PRIOR t.id = t.parentid

5.查找父节点(直接上级)

select t.*,LEVEL from Test2 t where LEVEL = 2 START WITH t.id=\'13\' CONNECT BY PRIOR t.parentid = t.id

 

以上是关于oracle 父子关系的主要内容,如果未能解决你的问题,请参考以下文章

oracle和postgresql 递归查询父子关系记录语法区别

oracle中connect by prior的使用

恢复Oracle误删数据一点小记

温故而知新之Oracle 父子游标

Oracle--树形自关联表查询SQL

Oracle递归查询父子兄弟节点