oracle数据库查询:查询父节点数据下的所有终结子节点

数据库中数据:

图:


现有要求如下:

知道一个节点,求该节点下所有没有子节点的子节点

如:

1--->6,7,8

2-->7,8


请问sql语句应该怎么写?



主要是分层查询,sql脚本如下:

CREATE TABLE TEST_A (ID NUMBER,PID NUMBER)

INSERT INTO TEST_A
VALUES(1,0);
COMMIT; 
INSERT INTO TEST_A
VALUES(2,1);
COMMIT; 
INSERT INTO TEST_A
VALUES(3,1);
COMMIT; 
INSERT INTO TEST_A
VALUES(4,2);
COMMIT; 
INSERT INTO TEST_A
VALUES(5,2);
COMMIT; 
INSERT INTO TEST_A
VALUES(6,3);
COMMIT; 
INSERT INTO TEST_A
VALUES(7,4);
COMMIT; 
INSERT INTO TEST_A
VALUES(8,5);
COMMIT;

 

SELECT *
FROM TEST_A A
START WITH A.PID = 0
CONNECT BY PRIOR A.ID = A.PID
ORDER BY A.PID;

 


转自:http://zhidao.baidu.com/link?url=JG0B8vEntYqwHvmB6wdqiwk-843x5osIwzXJ_11c-EMRUIuv_364Ow4shNHjk7bgDKbtCfZjIJK478QU1x3S2jjqP6HMLurLkbuHq78_J8G


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值