조인의 종류

Ryu·2023년 5월 15일
0

조인(join)이란?

조인(join)이란 하나의 테이블이 아닌 두 개 이상의 테이블을 묶어서 하나의 결과물을 만드는 것을 말합니다.

MySQL에서는 JOIN이라는 쿼리로, MongoDB에서는 lookup이라는 쿼리로 이를 처리할 수 있습니다.

조인의 종류

  • 내부 조인(inner join) : 왼쪽 테이블과 오른쪽 테이블의 두 행이 모두 일치하는 행이 있는 부분만 표기합니다.
  • 왼쪽 조인(left outer join) : 왼쪽 테이블의 모든 행이 결과 테이블에 표기됩니다.
  • 오른쪽 조인(right outer join) : 오른쪽 테이블의 모든 행이 결과 테이블에 표기됩니다.
  • 합집합 조인(full outer join) : 두 개의 테이블을 기반으로 조인 조건에 만족하지 않는 행까지 모두 표기합니다.

SQL JOIN 시각화 사이트 링크 : https://sql-joins.leopard.in.ua/

앞으로 설명할 때 왼쪽 테이블은 A, 오른쪽 테이블은 B라고 하고 설명하겠습니다.

내부 조인

내부 조인은 두 테이블 간에 교집합을 나타냅니다.

<SQL>
SELECT * FROM TableA A
INNER JOIN TableB B ON
A.key = B.key

왼쪽 조인

왼쪽 조인은 테이블 B의 일치하는 부분의 레코드와 함께 테이블 A를 기준으로 완전한 레코드 집합을 생성합니다. 만약 테이블 B에 일치하는 항목이 없으면 해당 값은 null 값이 됩니다.

<SQL>
SELECT * FROM TableA A
LEFT JOIN TableB B ON
A.key = B.key

오른쪽 조인

오른쪽 조인은 테이블 B의 일치하는 부분의 레코드와 함께 테이블 A를 기준으로 완전한 레코드 집합을 생성합니다. 만약 테이블 A에 일치하는 항목이 없으면 해당 값은 null 값이 됩니다.

<SQL>
SELECT * FROM TableA A
RIGHT JOIN TableB B ON
A.key = B.key

합집합 조인

합집합(완전 외부) 조인은 양쪽 테이블에서 일치하는 레코드와 함께 테이블 A와 테이블 B의 모든 레코드 집합을 생성합니다. 만약 일치하는 항목이 없으면 누락된 쪽에 null 값이 포함되어 출력됩니다.

<SQL>
SELECT * FROM TableA A
FULL OUTER JOIN TableB B ON
A.key = B.key
profile
나는야 머찐 개발자

0개의 댓글