1. JOIN의 개념
JOIN.
두 개 이상의 테이블을 공통 컬럼(주로 Primary Key와 Foreign Key)을 기준으로 연결하여 하나의 결과 집합(Result Set)을 생성하는 연산.
관계형 데이터베이스의 데이터 분산 저장 구조로 인해 여러 테이블의 데이터를 함께 조회할 필요 존재.
이를 해결하기 위한 SQL 연산이 JOIN.
대표적인 JOIN 유형.
- INNER JOIN
- LEFT OUTER JOIN
2. INNER JOIN (내부 조인)
INNER JOIN.
두 테이블에서 조건이 일치하는 데이터만 조회하는 JOIN 방식.
두 테이블 간 연결되는 컬럼 값이 동일한 경우에만 결과에 포함되는 구조.
두 테이블 중 하나라도 해당 데이터가 존재하지 않을 경우 결과에서 제외되는 특징.
특징
- 두 테이블 공통 데이터만 조회하는 방식
- 매칭되지 않는 데이터 결과에서 제외되는 구조
- 가장 기본적이고 많이 사용되는 JOIN 유형
3. LEFT OUTER JOIN (왼쪽 외부 조인)
LEFT OUTER JOIN.
왼쪽 테이블을 기준으로 조회하는 JOIN 방식.
왼쪽 테이블의 데이터는 모두 결과에 포함되는 구조.
오른쪽 테이블에서 매칭되는 데이터 존재 시 결합되는 형태.
오른쪽 테이블에 대응되는 데이터가 없을 경우 해당 컬럼 값 NULL 반환 구조.
특징
- 왼쪽 테이블 전체 데이터 조회 구조
- 오른쪽 테이블 매칭 데이터만 결합되는 방식
- 매칭 실패 시 NULL 반환
4. INNER JOIN vs LEFT OUTER JOIN
| 구분 | INNER JOIN | LEFT OUTER JOIN |
|---|---|---|
| 기준 테이블 | 기준 테이블 개념 없음 | 왼쪽 테이블 기준 |
| 조회 대상 | 두 테이블 공통 데이터 | 왼쪽 테이블 전체 데이터 |
| 매칭 실패 데이터 | 결과 제외 | NULL 반환 |
핵심 정리
-
INNER JOIN
두 테이블에 공통으로 존재하는 데이터만 조회하는 JOIN 방식. -
LEFT OUTER JOIN
왼쪽 테이블 기준 전체 데이터 조회 구조.
매칭되지 않는 데이터 NULL 반환.