viewimageM.php?id=programming&no=29bcc427b78777a16fb3dab004c86b6f0c84ca7046af80d41e2901631ae350779da7f05a45ed6955905e297b8183ccd60422514e38097681c647024ba6fa0d5b9b4309b2abdecc400dc1ff45af06eeefa755ddd6f97d7897ceb1acdf

도움이 되셨으면 좋겠네용. 출처는 퍼왔습니당. ^^

버전은 10gR2 입니다.

오라클 내부 조인 처리 기법 정의 추가염.

오라클은, 서로 다른 테이블에서 데이터를 꺼내와서, 연결시켜 보여주어야 할 때,

JOIN 이라는 기법을 사용한다.

 

JOIN도 그 방법에 따라 몇가지로 나뉘는데, 아래가 그 종류 들이다.

 

• Nested Loop Join  : 연결고리를 이용한 단순 연결

• Sort Merge Join   : 연결고리를 기준으로, 각 테이블을 Sorting 한 뒤에 연결

• Hash Join         : 연결고리에 Hash Map을 만든 후 연결

• Cartesian Join    : 연결조건 없이 모두 연결 ( A X B JOIN)
  (혹은 Cross Join)

• Sub Query         : Select한 결과를 이용한 연결
  (In, Any, All, Exists, Subquery Factoring)

• Semi Join         : 연결고리에서 조건에 만족하는 항목을 만나면 바로 연결하고 종료.
  (Nested Loop, Sort Merge, Hash, Hash Join Right)

• Anti Join         : 연결조건에 NOT 의 의미가 포함된 경우의 연결 방법.
  (Nested Loop, Sort Merge, Hash, Hash Join Right)

• Index Join        : 테이블 Acess 없이 인덱스 만으로 연결

• Outer Join        : 연결 조건에 맞지 않는 항목(FALSE)도 같이 출력하고 싶을 때 사용.
  (Full,Nested Loop, Sort Merge, Hash, Hash Join Right)

• Partition Outer Join      : Outer Join의 추가 옵션으로서, 데이터가 없는(NULL) 항목도 같이 출력하고 싶을 때 사용.

• Star Query Transformation : 하나의 테이블에 여러 테이블이 같이 연결되어 있을 때,
                              중심 테이블의 I/O를 줄이기 위한 기법