sql server 树状查询

 

--建表

create table TEST
(
  ID   VARCHAR2(10),
  PID  VARCHAR2(10),
  NAME VARCHAR2(100),
  LEV  VARCHAR2(100)
)

 

--插入数据后

  rowno  ID PID NAME LEV
1 a  aa 1
2 b a bb 2
3 b1 a bb1 2
4 b2 a bb2 2
5 c b cc 3
6 c1 b cc1 3
7 d c dd 4
8 e d ee 5
9 f e ff 6

 

--- 查询

 

with tree(id,pid,name,lev) as
(
select id,pid,name,lev from test where id= 'a' --当前id
union all
select a.id,a.pid,a.name,a.lev from test  a
inner join tree  b on a.pid=b.id where a.lev <= 4 --级别范围,当前所在级别计算得出
)
select * from tree ;

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值