AYSTORY

사원이 없는 부서도 포함하려면? LEFT OUTER JOIN 본문

SQLD

사원이 없는 부서도 포함하려면? LEFT OUTER JOIN

bye0nzn 2025. 8. 19. 13:55
사원이 없는 부서도 같이 출력하고 싶다 → 기준은 부서(DEPT) 이고, 사원이 없어도 행이 나오려면
👉 LEFT OUTER JOIN을 써야 합니다.

 

📌 정답 SQL

SELECT E.ENAME, D.DEPTNO, D.DNAME
FROM DEPT D 
     LEFT OUTER JOIN EMP E
       ON D.DEPTNO = E.DEPTNO;

 

📌 결과 예시

  • DEPT 테이블에 있는 모든 부서가 다 출력됩니다.
  • EMP에 해당 부서 사원이 있으면 이름(ENAME)이 붙고,
  • 사원이 없으면 ENAME = NULL.
ENAME DEPTNO DNAME
SMITH 20 RESEARCH
ALLEN 30 SALES
NULL 40 OPERATIONS

 

 

✅ 정리

  • INNER JOIN → 부서에 사원이 있어야만 출력
  • LEFT OUTER JOIN → 모든 부서 출력 + 사원 없으면 NULL
  • 그래서 "사원이 없는 부서 정보도 같이 출력"하려면 LEFT OUTER JOIN이 답이에요.

 

'SQLD' 카테고리의 다른 글

WHERE not exists  (0) 2025.08.19
LEFT OUTER JOIN 뒤 WHERE 절  (1) 2025.08.19
LEFT OUTER JOIN의 조건절 활용 예시: 고객번호 필터링  (0) 2025.08.19
USING 쓸 때 ALIAS 사용  (0) 2025.08.19
ORACLE과 SQL Server에서의 차이  (2) 2025.08.19