oracle 递归查询,向上和向下遍历

--查询全部资源信息
select * from urm_class_info
--向上遍历树,找到路径直到根节点,指定的是parentid
select distinct classid,parentid,name
from urm_class_info
start with parentid = 'cmdb0000000000000017'
connect by prior parentid = classid
--向上遍历树,找到路径直到根节点,指定的是classid,和下面的主要区别就是parentid和classid的位置
select classid,parentid,name
from urm_class_info
start with classid = 'cmdb0000000000000401'
connect by prior parentid = classid
--向下遍历整棵树,可以指定classid,来遍历指定节点的树
select classid,parentid,name
from urm_class_info
start with classid = 'cmdb0000000000000017'
connect by prior classid = parentid

--向下遍历整棵树,可以指定parentid,来遍历指定parentid节点的树,不包含parentid
select classid,parentid,name
from urm_class_info
start with parentid = 'cmdb0000000000000017'
connect by prior classid = parentid

转载于:https://www.cnblogs.com/alicesunBlog/archive/2013/01/15/2861221.html

你可能感兴趣的:(oracle 递归查询,向上和向下遍历)