더북(TheBook)

8.3.2 LEFT 조인

LEFT 조인의 기본 구문은 다음과 같습니다.

구문 8-3

SELECT ...
  FROM 테이블1 [AS] 별칭1
  LEFT [OUTER] JOIN 테이블2 [AS] 별칭2
    ON 별칭1.칼럼1 = 별칭2.칼럼2
   AND ...
 WHERE ... ;

내부 조인할 때 INNER JOIN을 사용했듯이 LEFT 조인에서는 LEFT OUTER JOIN을 사용합니다. 여기서 OUTER는 생략할 수 있습니다. 따라서 LEFT OUTER JOIN이라고 작성해도 되고 LEFT JOIN이라고 작성해도 됩니다. 조인 조건은 내부 조인처럼 ON 절에 기술합니다.

그런데 이 구문에서 LEFT의 의미는 뭘까요? 외부 조인은 조인 조건을 만족하는 건은 물론이고 조인 조건을 만족하지 않는 건까지 조회할 수 있다고 했습니다. 그런데 조인 조건을 만족하지 않는 건은 두 테이블 중 어느 테이블에나 있을 수 있습니다. 가령 A와 B 테이블이 있는데, 조인 조건에 따라 어떤 건은 A 테이블에 만족하는 건이 없고, 어떤 건은 B 테이블에 만족하는 건이 없을 수 있죠. 이때 LEFT 조인은 조인 구문인 LEFT [OUTER] JOIN을 기준으로 왼쪽 테이블(구문에서는 윗줄의 FROM 절에 명시한 테이블)에서 조인 조건을 만족하지 않는 건을 추가로 조회해 오라는 뜻입니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.