[SQL] OUTER JOIN

Estar·2024년 7월 11일
0

TIL

목록 보기
5/17

사실 INNER JOIN은 그냥 겹치는 것들만 합치는 거지만
OUTER JOIN은 좀 복잡쓰,,,

LEFT OUTER JOIN은 왼쪽 테이블의 모든 데이터가 출력이 되는 것을 전제
RIGHT OUTER JOIN은 오른쪽 테이블의 모든 데이터가 출력이 되는 것을 전제로 한다.
FULL OUTER JOIN은 양쪽 테이블 데이터가 모두 출력이 되는걸 전제로한다.

모든 데이터가 출력이 된다 = 테이블에 겹치는 게 없어도 출력이 된다.

이 예시에서 MOVIE 테이블과 MOVIE _CAST 테이블을 LEFT OUTER JOIN을 하게 된다면, 왼쪽 테이블의 모든 데이터들은 그대로!!! 유지 되어야 한다.

그래서 JOIN 결과 값을 보면 왼쪽 테이블의 영화 타짜 곡성은 오른쪽 테이블에 없어도 이렇게 들어가고 NULL 값이 생긴다.

왜냐하면 왼쪽 테이블의 모든 데이터 값이 JOIN된다는 전제가 있기 때문!

만약 RIGHT OUTER JOIN을 하게된다면??

이런 결과 값이 나오게 될 것이다.

SELECT A.MOVIE_NAME, A.DIRECTOR, A.CASTING
  FROM MOVIE A
  LEFT OUTER JOIN MOVIE_CAST B
  ON A.MOVIE_NAME = B.MOVIE_NAME

ON을 쓰면 공통된 칼럼을 지정해줄 수 있다는 점 잊지말자

profile
개발자를 꿈꿔요

0개의 댓글

관련 채용 정보