SQLDSQL 활용JOIN난이도 1MCQ

SQLD JOIN 기출문제 #703

문제

다음 테이블 상황에서 SQL 실행 결과로 올바른 것은?

[부서] DEPT_ID: 10, 20, 30 [직원] EMP_ID: 1,2,3 DEPT_ID: 10,10,40

SQL
SELECT D.DEPT_ID, COUNT(E.EMP_ID) FROM DEPT D LEFT JOIN EMP E ON D.DEPT_ID = E.DEPT_ID GROUP BY D.DEPT_ID;

① 10:2, 20:0, 30:0 (3건) ② 10:2, 20:1, 30:1 (3건) ③ 10:2 (1건) ④ 10:2, 40:1 (2건)

정답

1

해설

LEFT JOIN으로 DEPT의 모든 행이 포함되고, COUNT(E.EMP_ID)는 NULL을 제외하고 카운트한다. 부서 10은 직원 2명과 매칭되어 2, 부서 20과 30은 매칭되는 직원이 없어 E.EMP_ID가 NULL이므로 COUNT 결과는 0이 된다. ② COUNT(*)와 혼동한 경우. ③ GROUP BY를 무시한 경우. ④ INNER JOIN 결과와 혼동한 경우.

이런 문제 20~50개를 한 번에 풀어보세요

매번 새로 추가되는 모의고사 + 오답 자동 복습 + 회차별 실력 추적. 회원가입 후 무료 이용.

[SQLD] JOIN SQL 활용 기출 #703 | sqldpass