Oacle SQL 재 귀적 사용 에 대한 자세 한 설명

Oacle 데이터베이스 에서 SQL 재 귀 문 구 를 사용 하려 면 어떻게 써 야 합 니까?다음은 Oacle 에서 SQL 재 귀 문 구 를 사용 하 는 예 를 소개 합 니 다.참고 하 시기 바 랍 니 다.예:

pid  id
  a   b  
  a   c    
  a   e  
  b   b1  
  b   b2  
  c   c1  
  e   e1  
  e   e3  
  d   d1  

pid=a,   
  a   b  
  a   c    
  a   e  
  b   b1  
  b   b2  
  c   c1  
  e   e1  
  e   e3 
SQL :select   parent,child   from   test   start   with   pid='a'  
connect   by   prior   id=pid
Oracle  SQL 재 귀 조회 문:1.표 기구

SQL> desc comm_org_subjection
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------
 ORG_SUBJECTION_ID                         NOT NULL VARCHAR2(32)  
 ORG_ID                                    NOT NULL VARCHAR2(32)
 FATHER_ORG_ID                             NOT NULL VARCHAR2(32)  
 LOCKED_IF                                 NOT NULL VARCHAR2(1)
 START_DATE                                NOT NULL DATE
 END_DATE                                           DATE
 EDITION_NAMEPLATE                                  NUMBER(8)
 CODE_AFFORD_IF                                     VARCHAR2(1)
 CODE_AFFORD_ORG_ID                        NOT NULL VARCHAR2(32)
 CODING_SHOW_ID                                     NUMBER(8)
 BSFLAG                                             VARCHAR2(1)
 MODIFI_DATE                                        DATE
 CREATOR_ID                                         VARCHAR2(32)
 CREATE_DATE                                        DATE
 CREATOR                                            VARCHAR2(35)
2.재 귀 검색 부모 노드 orgid 는 C60000000001 의 모든 하위 노드 입 니 다:

select * from comm_org_subjection a
start with a.org_id='C6000000000001'
connect by prior a.org_subjection_id=a.father_org_id
3.하위 노드 를 재 귀적 으로 찾 습 니 다 orgid 는 C60000000001 의 모든 부모 노드 입 니 다:

select org_id from comm_org_subjection a
start with a.org_id='C6000000000001'
connect by prior a.father_org_id=a.org_subjection_id

좋은 웹페이지 즐겨찾기