1
오라클에서 CONNECT BY
절을 사용하여 계층 적 데이터를 찾는 동안 문제가 발생했습니다. 예를 들어 보겠습니다. A는 하위 파트 B를 가지고 부모 파트이고 B는 하위 파트 C를가집니다. CONNECT BY
절을 사용하면 세 가지 레벨을 모두 얻을 수 있지만 최상위 레벨 만 원할 것입니다. ,계층 구조의 최상위를 얻기 위해 절을 연결하십시오.
SELECT
myTable.ID,
myTable.ParentID
FROM myTable
WHERE LEVEL = 1
CONNECT BY PRIOR myTable.ID = myTable.ParentID
는 모든 수준에서 최상위 (루트) 값을 찾으려면 CONNECT_BY_ROOT
연산자를 사용하여 열 이름 앞에 : 예 A.
답장을 보내 주셔서 감사합니다 깁스하지만 3 레벨까지 내 자녀 기록을 가지고 있다면이 쿼리가 작동합니다 .. 하위 레코드의 부모가 레벨 3에 있음을 알 수 있습니까? – user2133005
내 답을 업데이트했습니다. 레벨에 관계없이 계층 구조의 최상위 레벨에서 값을 가져 오는 방법을 보여줍니다. 제발 당신이 필요로하는지보세요. –
당신이 입력 한 많은 깁스 정말 고마워. 부모와 자식이 같을 때 수량을 얻는 동안 새로운 문제에 직면 해있다. 예 : 수량 14과 A를 갖는 B = 수량 5.i 필요 14의 출력하지만 쿼리에 의해 cnnect에서 5 출력을 얻고 있습니다. 당신의 귀중한 입력을 위해 정말 급한 .. 도와주세요. – user2133005