오라클 계층형 쿼리 예제
2/08/2019쿼리를 완료하려면 모든 기본 쿼리와 재귀 쿼리를 함께 결합해야 합니다. 이 모든 것을 종합하면: Connect by는 SQL을 사용하여 데이터 트리를 만드는 오라클의 특정 방법입니다. 그것은 두 가지 주요 절을 가지고, 시작하고에 의해 연결. 지금까지 우리는 좋은 길들이기 데이터로 작업해 왔습니다. 우리의 선은 직선이며, 우리의 계층 적 나무는 복잡하지 않습니다. 그러나, 현실 세계는 스파게티 의 접시처럼 지저분할 수 있습니다. 킹이 전체 적인 상사가 아니라 존스가 이끄는 이사회에 보고해야 했다고 상상해 보십시오. 즉, 킹은 존스의 상사이지만, 존스는 왕의 상사이기도 합니다. 이를 반영하도록 EMP 테이블을 업데이트하고 쿼리를 다시 실행하면 다음 쿼리를 완료하여 3단계에서 역방향 조직도를 다시 빌드합니다. 그러나 이번에는 재귀사용. employee_id 107로 시작하여 회사를 CEO로 이동해야 합니다. 이전 예제에서는 매니저가 없는 큰 카후나로 시작하고 싶었습니다.
오라클에게 데이터의 루프에도 불구하고 진행하도록 지시하려면 CONNECT BY 문을 수정하여 NOCYCLE에 의해 연결해야 합니다. 이 경우 오라클은 쿼리에 대한 계층 구조를 만들지 않습니다. 그래서 오라클을 관리하기 위해 NOCYCLE 절을 제공했습니다. 노사이클 키워드를 사용하여 이 작업을 방지할 수 있습니다. 이 검색은 쿼리가 동일한 행으로 반환될 때 발견됩니다. 데이터베이스는 반복되는 행을 숨기고 트리처리를 계속합니다. 위의 예제에서 다른 예제와 계층 쿼리를 설명 했습니다. 이 기사를 좋아바랍니다. 질문 : 우리에게 직원과 그 관리자의 기록을 제공 할 쿼리를 작성? 계층적 쿼리는 매우 전통적이며 일상 생활에서 유용한 기능 중 하나입니다.
모든 회사에는 계층적 데이터가 있습니다. 계층의 트래버스는 위쪽 또는 위쪽입니다. 예를 들어 CEO의 관리자를 낮은 프로그래머로 설정합니다. job_id에서 순환하려면 다음 쿼리를 완료합니다. 사이클 열을 정의하는 것은 N으로 기본값인_repeat입니다. 동일한 job_id에 액세스할 때 계층 적 쿼리를 사용하여 데이터에서 부모-자식 관계를 따라 이동할 수 있습니다. 예를 들어 가계도, 컴퓨터 디렉터리 구조 및 회사 조직도입니다. 그렇지 않다는 것을 제외하고는.