oracle 树节点处理
查询树节点所有子节点
table dept ( code ,parent_code ,seq)
1、prior
SELECT A.CODE, B.CODE
FROM DEPT A
JOIN DEPT B
ON A.CODE != B.CODE
WHERE EXISTS (SELECT 'x'
FROM DEPT C
WHERE C.CODE = A.CODE
START WITH B.CODE = C.CODE
CONNECT BY C.CODE = PRIOR C.PARENT_CODE)
ORDER BY A.CODE;
2、seq
SELECT A.CODE, B.CODE
FROM DEPT A
JOIN DEPT B
ON A.CODE != B.CODE
AND B.SEQ LIKE A.SEQ || '%'
ORDER BY A.CODE;
查询树节点所有子节点
table dept ( code ,parent_code ,seq)
1、prior
SELECT A.CODE, B.CODE
FROM DEPT A
JOIN DEPT B
ON A.CODE != B.CODE
WHERE EXISTS (SELECT 'x'
FROM DEPT C
WHERE C.CODE = A.CODE
START WITH B.CODE = C.CODE
CONNECT BY C.CODE = PRIOR C.PARENT_CODE)
ORDER BY A.CODE;
2、seq
SELECT A.CODE, B.CODE
FROM DEPT A
JOIN DEPT B
ON A.CODE != B.CODE
AND B.SEQ LIKE A.SEQ || '%'
ORDER BY A.CODE;