본문 바로가기
Develop/Database

[Database] Join 정리

by 코딩의성지 2021. 8. 21.

오늘은 간단하게 Join에 대해 정리해 보고자한다.

 

Join은 크게 다섯가지로 생각하면된다.

 

아래 그림을 보자.

보시면 집합의 개념으로 Join을 이해하면 쉽게 이해할수 있다.

 

먼저 Inner Join 같은 경우에는 집합의 교집합과 같다.

 

조인이 되는 키를 기준으로 둘 이상의 테이블에 존재하는 데이터를 조회하는 것이고, 보통 Simple Join이라고 부르기도 한다. 여기서 Null 인 데이터는 포함되지 않는다.

 

사용 예시는 아래와 같다.

SELECT * FROM TABLE1 t1 INNER JOIN TABLE2 t2 ON (t1.key=t2.key);

 

다음 Outer Join은 두테이블에서 지정된 쪽 ( Left or Right or Full) 의 모든 결과를 보여주면서 반대쪽에 매칭되는 쪽까지 보여주고,  Null 값까지 포함하는 Join 을 의미한다. Outer Join의 종류에는 Left, Right, Full Outer Join 이 있다.

 

사용 예시는 아래와 같다.

SELECT * FROM TABLE1 t1 LEFT JOIN TABLE2 t2 ON (t1.key=t2.key);
SELECT * FROM TABLE1 t1 RIGHT JOIN TABLE2 t2 ON (t1.key=t2.key);
SELECT * FROM TABLE1 t1 FULL OUTER JOIN TABLE2 t2 ON (t1.key=t2.key);

 

다음은 마지막으로 카테시안 곱에 대한 내용을 정리해 보겠다.

카테시안 곱은 Join 조건절을 아무것도 적지 않았을때 모든 데이터를 가져오게 되는 현상이다. 

다른 말로 Cross Join이라고 하기도 한다.

반응형

댓글