【随手记】Oracle层级查询 connect by

今天同事说要查某一组织下所有的子孙组织,并且要将他们的名称写出一个路径,了解了之后发现可以用start with...... connect by......

select  tb.id, tb.parent_id, tb.name, tb.sorg_code,
sys_connect_by_path(tb.name,'\') ,level
  from tb_orgusers tb
start with tb.parent_id = '213323'
connect by  tb.parent_id =prior tb.id
order by level ;

level:层级数

start with:查询开始的条件

connect by: 层级查询条件

prior:如果在=前面则是往上层遍历,如果在=后面则是往下层遍历

猜你喜欢

转载自blog.csdn.net/lee_master/article/details/102822357