먼저, \

 

TABLE A, B 가 있으며, A가 마스터 테이블로 B는 마스터의 종속 테이블입니다.

 

A테이블엔 A컬럼이  PK INDEX

B테이블엔 A,B 컬럼이 복합 인덱스PK

 

로 되어있구요.

 

이런 상황에서 조인을 할 경우,

 

OUTER JOIN, INNER 를 사용할 경우, 결국 네스티드 루프 조인이 실행결과에 나오는데요.

 

                                   A

LEFT OUTER JOIN B

                                    ON B.A = A.A

                                    AND A.DELETE_FLG = 0

으로 흔히 쓰는 조인을 하는 것과

 

루프조인의 경우 반드시 한쪽은 테이블 스캔이 일어아는데요. 이러면 랜덤엑세스가 일어날테구요. 그래서 생각한게

둘다 인덱스를 못쓰게 해서 해쉬 조인을 유도하면 어떨까 해서

                                    A

LEFT OUTER JOIN B.A = A.A+`` 하니 해쉬로 풀리는데

어떤게 성능상 이득이 있을까요?

 

공부중이긴 한데 참 머리 아프네요..ㅋ;;;

 

A 테이블은 비교적 적은 양이며,

B는 종속이라 항상 A보다는 많은 양의 데이터가 누적되고 수정됩니다.

 

>.<

 

 

추가.

참. 마지막 결과는 그룹함수로 그룹핑을 하게 됩니다. b테이블의 내용은 검색으로 활용할뿐, 결과는 a의 마스터 테이블의 내용이기 때문에요...>.<

 

추가2. 제대로 좀 공부해보려고 상세하게 짠 쿼리를 올려봅니다...ㅎ





profile