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 

 

posted @ 2017-02-09 15:14  myJoan  阅读(7237)  评论(0编辑  收藏  举报