SQL 개발자 자격증SQL 활용조인 — FULL OUTER JOIN난이도 2MCQ

SQL 개발자 자격증 조인 — FULL OUTER JOIN 기출문제 #21839

문제

두 테이블 부서와 사원을 결합하되, 매칭되지 않는 부서(사원이 한 명도 없는 부서)와 부서가 배정되지 않은 사원까지 양쪽 미매칭 행을 모두 결과에 포함시키려고 한다. 가장 적절한 방법은?

① NVL 함수를 사용한 CROSS JOIN ② NVL 함수를 사용한 INNER JOIN ③ FULL OUTER JOIN ④ UNION

정답

3

해설

정답은 ③이다. FULL OUTER JOIN은 조인 조건이 일치하는 행은 물론, 왼쪽·오른쪽 테이블 각각에서 대응 행이 없는 행까지 모두 결과에 포함하고 부족한 쪽 컬럼은 NULL로 채운다. '양쪽 미매칭을 모두 표시'하는 요구에 정확히 부합한다.

  • ①: CROSS JOIN은 두 테이블의 모든 조합(카티션 곱)을 만들 뿐 매칭/미매칭 개념이 없고, NVL로도 원하는 결합을 만들 수 없다.
  • ②: INNER JOIN은 양쪽이 일치하는 행만 남기므로 미매칭 행이 모두 사라진다. NVL을 붙여도 조인 결과 행 집합 자체는 늘지 않는다.
  • ④: UNION은 컬럼 구조가 같은 두 결과 집합을 세로로 합칠 뿐, 두 테이블을 컬럼 기준으로 가로 결합하는 조인이 아니다.

보충: FULL OUTER JOIN은 (LEFT OUTER JOIN) UNION (RIGHT OUTER JOIN)으로도 표현할 수 있다. Oracle 구식 표기 (+)로는 양방향 외부조인을 한 번에 표현할 수 없다.

SQL 개발자 자격증 SQL 활용 다른 기출문제

SQL 개발자 자격증 시험 준비 가이드

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

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

[SQL 개발자 자격증] 조인 — FULL OUTER JOIN SQL 활용 기출 #21839 | 문어CBT