학습 자료

LEFT JOIN

LEFT JOIN은 왼쪽 테이블의 모든 행을 반환하고, 오른쪽 테이블에서 일치하는 행이 있으면 데이터를 가져오며, 일치하지 않는 경우 오른쪽 테이블의 컬럼에 NULL을 채웁니다.

왼쪽 테이블의 데이터를 기준으로 삼는다는 점이 핵심입니다.


LEFT JOIN 문법

LEFT JOIN의 문법은 다음과 같습니다.

LEFT JOIN 구문
SELECT columns FROM table1 LEFT JOIN table2 ON table1.column = table2.column;
  • table1: 왼쪽 테이블 (결과에 항상 포함됨)
  • table2: 오른쪽 테이블 (조건이 맞는 경우에만 값이 채워짐, 없으면 NULL)

예시: Students와 Enrollments

아래는 students 테이블과 enrollments 테이블을 LEFT JOIN으로 결합한 예시입니다.

students

student_idname
1김서준
2박지민
3이수민
4최윤서
5정민호

enrollments

student_idclass_name
1수학
1과학
2역사
5미술
LEFT JOIN 예시
SELECT students.name, enrollments.class_name FROM students LEFT JOIN enrollments ON students.student_id = enrollments.student_id;

쿼리 결과

nameclass_name
김서준수학
김서준과학
박지민역사
이수민NULL
최윤서NULL
정민호미술

이수민최윤서처럼 수강 내역이 없는 학생도 결과에 포함되며, 해당 학생의 class_name 값은 NULL로 표시됩니다.


LEFT JOIN 사용 시점

LEFT JOIN은 다음과 같은 상황에서 유용합니다.

  • 왼쪽 테이블의 모든 데이터를 기준으로 결과를 보고 싶을 때
  • 매칭되지 않은 행을 포함해 누락 데이터를 분석해야 할 때
  • 전체 목록을 생성하고, 연관 데이터가 없는 경우도 함께 보여야 할 때 (예: 구매 여부와 관계없이 모든 고객을 포함한 리스트)
Quiz
0 / 1

LEFT JOIN 연산에서는 오른쪽 테이블의 일치하지 않는 행이 해당 열에 NULL 값을 가진 채 결과에 포함된다.

학습 자료

AI 튜터

디자인

업로드

수업 노트

즐겨찾기

도움말

코드 에디터

코드 실행
코드 생성

DB 테이블 구조

실행 결과