내부 조인 vs 외부 조인 차이 정리

SQL에서 여러 테이블을 함께 사용할 때 꼭 필요한 개념이 바로 **조인(JOIN)**입니다.
특히 내부 조인과 외부 조인의 차이는 반드시 이해해야 합니다.


 내부 조인 (INNER JOIN)

조건이 일치하는 데이터만 조회 (교집합)

SELECT *
FROM student
INNER JOIN enrol
ON student.stu_no = enrol.stu_no;

 특징

  • 공통 데이터만 출력
  • 매칭 안 되는 데이터는 제외

 외부 조인 (OUTER JOIN)

👉 조건이 일치하지 않아도 데이터 유지


🔹 LEFT JOIN

  • 왼쪽 테이블 기준
SELECT *
FROM student
LEFT JOIN enrol
ON student.stu_no = enrol.stu_no;

👉 매칭 안 되면 NULL 처리


🔹 RIGHT JOIN

  • 오른쪽 테이블 기준

🔹 FULL JOIN

  • 양쪽 모두 포함

 핵심 차이

구분내부 조인외부 조인

결과 교집합 포함(한쪽/전체)
NULL 없음 발생 가능
특징 정확한 매칭 누락 데이터 포함

 한 줄 정리

INNER JOIN = 교집합 / OUTER JOIN = 데이터 보존