[sql] JOIN

김키키·2022년 8월 26일
0

문제를 풀다보니 join에 대해 정확히 이해할 필요가 있다고 생각해 정리해본다.

JOIN

한 개 이상의 테이블과 테이블을 서로 연결하여 사용하는 기법을 말한다.

  • equi join (동등조인) : 조인 조건이 정확히 일치하는 경우
  • outer join (외부 조인) : 조인 조건이 정확히 일치하지 않아도 모든 결과 출력
  • self join (자체 조인) : 자체 테이블에서 조인하고자 할 때
  1. 조인을 사용할 때 테이블에 별칭을 필수적으로 사용해야 한다.
  2. 테이블 순서는 가장 중심이 되는 테이블을 앞에 기술한다

EQUI JOIN(INNER JOIN)

(=inner outer join)
양쪽 테이블에서 조인 조건이 일치하는 행(데이터만) 가져오는 방식.
등호(=) 연결 연산자를 사용해 조건 값이 정확하게 일치할 때만 행을 가져온다.

select a.열 이름, b.열 이름 ...
from 테이블명 a, 테이블명 b 
where a.열 이름 = b.열 이름;

OUTER JOIN

조건을 만족하지 않는 행도 모두 출력하기 위한 조인 방법.

  • (+) 기호 사용

  • (+) 기호는 조인할 행이 없는, 데이터 값이 부족한 테이블의 열 이름 뒤에 작성한다.

  • (+) 기호를 붙이면 데이터 값이 부족한 테이블에 null값을 갖는 행이 생성되어 데이터 값이 충분한 테이블의 행들이 null행에 조인된다.

    select a.열 이름, b.열 이름 ...
    from 테이블명 a, 테이블명 b 
    where a.열 이름 = b.열 이름(+);

ON, WHERE

SQL문 순서

from -> on -> join -> where

EQUI JOIN(INNER JOIN)

profile
로그를 남겨보자

0개의 댓글