AYSTORY
사원이 없는 부서도 포함하려면? LEFT OUTER JOIN 본문
사원이 없는 부서도 같이 출력하고 싶다 → 기준은 부서(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 |
