【发布时间】:2014-02-15 00:07:59
【问题描述】:
有人知道如何了解 CONNECT BY 的深度吗?例如,如果我有;
PARENT_ID PARENT_KEY CHILD_ID CHILD_KEY
1 BOB 2 CHRIS
1 BOB 3 TODD
2 CHRIS 4 JON
2 CHRIS 5 ALF
5 ALF 6 GERARD
5 ALF 7 MIKE
3 TODD 8 ANN
3 TODD 9 FRED
CHRIS 的深度为 3,TODD 的深度为 2,如何以编程方式找出 CHRIS 和 TODD 的深度在哪里;
START WITH PARENT_KEY = 'BOB' CONNECT BY PRIOR CHILD_ID = PARENT_ID
对不起,我傻了……这里是给未来有脑残的人的答案;
SELECT
PARENT_KEY
, MAX(LEVEL) AS DEPTH
FROM TIMELINE_CONFIG
START WITH PARENT_KEY = 'BOB' CONNECT BY PRIOR CHILD_ID = PARENT_ID
GROUP BY PARENT_KEY
【问题讨论】:
标签: sql oracle connect-by