안녕하세요, 루트 노드 나 리프 노드가 아닌 계층 적 테이블 (빨간색 원으로 표시) 중 하나에서 중산층 관리자를 검색하는 데 도움이 필요합니다.계층 적 쿼리 (중간 노드 검색 방법)
계층 차트/데이터
나는 내 쿼리
select level, first_name ||' '|| last_name "FullName"
from more_employees
where employee_id not in (select NVL(manager_id, 0) from more_employees)
start with employee_id = 1
CONNECT by prior employee_id = manager_id;
를 사용하여 모든 잎 노드를 검색 할 수 있었다
나는 내가 사용해야 확신 키워드 "in"내 where 절에 있지만 다른 결과가 계속. 이 같은
그냥 호기심. 왜 그것이 하위 선택보다 빠를 것이라고 생각합니까? –
@ValentinKuzub : 테이블에 대한 단일 액세스 만 필요하기 때문입니다. 하위 선택 결과는 같은 테이블에 두 개의 쿼리 결과가됩니다. (질문에 원래 쿼리에 대해 말하지만 모든 답변을 얻으려고합니다.) –
감사합니다. –