oracle单表自关联分层级sql

遇到个业务场景,分层级显示数据库的表,该表主键为bas_wrapper_uuid,并且有层级关系字段pre_bas_wrapper_uuid,该字段与某条数据的主键关联。标识上一层级的数据,用level来标识级数,

在这里插入图片描述

  select level as label_Num,
       bw.bas_wrapper_uuid,
       bw.wrapper_code,
       bw.wrapper_name,
       bw.pre_bas_wrapper_uuid,
       bw.wrapper_type
  from bas_wrapper bw
  where 0 = 0
 start with bw.pre_bas_wrapper_uuid is null and bw.status='Active' and bw.wrapper_type in('PACKAGE_MATERIAL','PACKAGE_GROUP')
connect by prior bw.bas_wrapper_uuid = bw.pre_bas_wrapper_uuid
order by label_Num

其中level为层级显示的排序,
start whit 后接条件
connect by prior 自关联字段
order by 排序显示,也可以在where 下面加上显示分组之后的查询条件,进行对应的查询
在这里插入图片描述

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值