sql server中的父子级联查询,类似于Oracle的connect by_飘云羽逸_新浪博客

CREATE TABLE (
id INT PRIMARY KEY,
name VARCHAR (20),
pid INT
)
 
insert into guest.test1 values(1,'dq', NULL);
insert into guest.test1 values(2,'家电',1);
insert into guest.test1 values(3,'冰箱',2);
insert into guest.test1 values(4,'洗衣机',2);
insert into guest.test1 values(5,'电脑',1);
insert into guest.test1 values(6,'笔记本',5);
insert into guest.test1 values(7,'平板',5);
insert into guest.test1 values(8,'组装机',7);
insert into guest.test1 values(9,'品牌机',7);

-- sql server子查询
WITH subqry (id, NAME, pid) AS (
SELECT id, NAME, pid FROM guest.test1 WHERE id = 5
UNION ALL
SELECT guest.test1.id, guest.test1.NAME, guest.test1.pid
FROM guest.test1, subqry
WHERE guest.test1.pid = subqry.id
) SELECT * FROM subqry;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值