Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
Tags
- s
- 윤성우 열혈자료구조
- stream
- Selection Sorting
- Stack
- datastructure
- 이스케이프 문자
- C 언어 코딩 도장
- 혼자 공부하는 C언어
- Algorithm
- Serialization
- JSON
- 윤성우의 열혈 자료구조
- R
- ㅅ
- list 컬렉션
- 알기쉬운 알고리즘
- buffer
- 이것이 자바다
- Graph
- C programming
- 메모리구조
- insertion sort
- coding test
Archives
- Today
- Total
Engineering Note
[Database] MySQL, SQL JOIN 완벽 정리: INNER JOIN vs LEFT JOIN 본문
Computer Science/Database
[Database] MySQL, SQL JOIN 완벽 정리: INNER JOIN vs LEFT JOIN
Software Engineer Kim 2025. 10. 5. 23:29INNER JOIN과 LEFT JOIN, 뭐가 다를까?
회원 테이블과 게시글 테이블을 조회할 때, "게시글을 쓴 회원만" 볼 것인가, "게시글 안 쓴 회원도" 볼 것인가의 차이입니다.
JOIN의 정식 명칭
INNER JOIN = JOIN (정식 명칭)
LEFT OUTER JOIN = LEFT JOIN (정식 명칭)
실무에서는 JOIN, LEFT JOIN으로 줄여서 많이 씁니다.
INNER JOIN: 교집합만 조회
언제 사용? 두 테이블에 모두 존재하는 데이터만 필요할 때
예시 상황
회원 3명이 있습니다:
SELECT * FROM member;

이 중 김철수, 이철수만 게시글을 작성했습니다:
SELECT * FROM board;

INNER JOIN 실행
SELECT *
FROM member m
JOIN board b
ON m.member_id = b.member_id;
결과: 게시글을 작성한 회원(김철수, 이철수)만 조회됩니다.

박철수는 조회되지 않음 (게시글이 없으므로)
LEFT JOIN: 왼쪽 테이블 전체 조회
언제 사용? 왼쪽 테이블의 모든 데이터를 보되, 오른쪽 테이블과 매칭되는 게 있으면 함께 보고 싶을 때
LEFT JOIN 실행
SELECT *
FROM member m
LEFT JOIN board b
ON m.member_id = b.member_id;
결과: 모든 회원이 조회되고, 게시글이 없는 회원은 NULL로 표시됩니다.

박철수도 조회됨 (게시글 정보는 NULL)
핵심 차이 정리
| 구분 | INNER JOIN | LEFT JOIN |
| 조회 기준 | 두 테이블 모두 존재하는 데이터 | 왼쪽 테이블 전체 |
| 예시 결과 | 게시글 쓴 회원만 | 모든 회원 (게시글 없어도) |
| 사용 상황 | "작성자와 글 함께 보기" | "전체 회원 현황 보기" |
실무 활용 팁
INNER JOIN 사용:
- 주문한 고객과 주문 내역
- 수강 신청한 학생과 강의 정보
LEFT JOIN 사용:
- 전체 회원과 주문 여부 확인
- 전체 상품과 판매 이력 분석
'Computer Science > Database' 카테고리의 다른 글
| [Database] FLUSH와 COMMIT 차이 (0) | 2025.10.07 |
|---|---|
| [Database] H2 다운로드 및 실행방법과 실행 모드 (0) | 2025.10.07 |
| [Database] MySQL 외래키 예외 (0) | 2025.10.05 |
| [Database] 게시판 테이블 만들기 SQL (0) | 2025.10.04 |
| [Database] SQL 문법 정리 (0) | 2025.09.25 |
Comments