도움이 되셨으면 좋겠네용. 출처는 퍼왔습니당. ^^
버전은 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를 줄이기 위한 기법
아 감사합니다~ 해쉬조인 머지조인.. 등등 그런거에 대해서 알고 싶은데 그거는 없네요 ㅎㅎ;; 저도 찾아봐야 할듯
아 맞다 조인도 있었죠. 올려 드릴께요. ^^
이거슨 무엇인가.....
각각 항목이 너무 방대해서 그냥 정의 정도만 올렸어요. 옵티마이저나 조인기법 실행계획 같은거 관심 있으신거 같은데 Optimizing Oracle Optimizer(책이름짱길음;;;) 이책 추천 드려요. 욱짜 아저씨 책인데 읽기 편하고 재밌어요. ^^