FULL OUTER JOIN
FULL OUTER JOIN
은 왼쪽 테이블과 오른쪽 테이블의 모든 행을 반환합니다.
일치하는 값이 있으면 해당 행들을 결합해 보여줍니다.
일치하지 않는 경우, 누락된 값은 NULL
로 채워집니다.
FULL OUTER JOIN 문법
FULL OUTER JOIN
의 기본 구문은 다음과 같습니다.
FULL OUTER JOIN 구문
SELECT 열들 FROM 테이블1 FULL OUTER JOIN 테이블2 ON 테이블1.열 = 테이블2.열;
이 Join은
LEFT JOIN
과RIGHT JOIN
의 합집합입니다.
FULL OUTER JOIN 예시
아래는 학생
테이블과 수강신청
테이블 사이의 FULL OUTER JOIN
예시입니다.
학생
학번 | 이름 |
---|---|
1 | 김민수 |
2 | 박지현 |
3 | 이서준 |
4 | 최예린 |
5 | 정수진 |
수강신청
학번 | 과목명 |
---|---|
1 | 수학 |
1 | 과학 |
2 | 역사 |
3 | 미술 |
FULL OUTER JOIN 예시
SELECT 학생.이름, 수강신청.과목명 FROM 학생 FULL OUTER JOIN 수강신청 ON 학생.학번 = 수강신청.학번;
쿼리 결과:
이름 | 과목명 |
---|---|
김민수 | 수학 |
김민수 | 과학 |
박지현 | 역사 |
최예린 | NULL |
NULL | 미술 |
이 결과에는 일치하는 행, 일치하지 않는 학생, 일치하지 않는 과목이 모두 포함됩니다.
FULL OUTER JOIN은 어떠한 경우에 사용될까요?
다음과 같은 경우 FULL OUTER JOIN
을 사용하세요.
- 두 테이블의 데이터를 빠짐없이 모두 보고 싶을 때
- 누락된 관계를 점검하고자 할 때
- 테이블 간 레코드를 감사하거나 정합성을 대조할 때
참고: SQLite와 MySQL은
FULL OUTER JOIN
을 직접 지원하지 않습니다.LEFT JOIN
과RIGHT JOIN
결과를UNION
하여 유사하게 구현할 수 있습니다.
Quiz
0 / 1
SQL 쿼리에서 FULL OUTER JOIN은 무엇을 반환하나요?
양쪽 테이블에서 일치하는 행만.
왼쪽 테이블의 행만.
양쪽 테이블의 모든 행을 반환하며, 일치하는 값이 없는 곳은 NULL로 채운다.
오른쪽 테이블의 행만.
학습 자료
AI 튜터
디자인
업로드
수업 노트
즐겨찾기
도움말
코드 에디터
코드 실행
코드 생성
DB 테이블 구조
실행 결과