SQLDSQL 기본NVL난이도 2MCQ

SQLD NVL 기출문제 #3675

문제

다음 중 NVL을 사용하여 금액 컬럼의 NULL을 0으로 대체한 뒤 합계를 구하는 SQL로 가장 적절한 것은?

① SELECT SUM(금액) FROM 매출 ② SELECT NVL(SUM(금액), 금액) FROM 매출 ③ SELECT SUM(NVL(금액, 0)) FROM 매출 ④ SELECT NVL(금액, SUM(0)) FROM 매출

정답

3

해설

정답: 3. 개별 금액 값이 NULL이면 0으로 바꾼 뒤 합산하려면 SUM(NVL(금액, 0))을 사용한다.

오답 풀이

  • 1번: SUM은 NULL을 제외하지만 NULL을 0으로 대체한 행별 계산은 아니다.
  • 2번: SUM 결과가 NULL일 때 금액으로 대체하는 잘못된 형태이다.
  • 3번: 각 행의 NULL 금액을 0으로 대체한 뒤 합산한다.
  • 4번: 일반 컬럼과 집계 함수를 잘못 혼용했다.

보충 개념 NVL(expr1, expr2)는 expr1이 NULL이면 expr2를 반환한다. 행별 NULL 대체 후 집계하려면 집계 함수 내부에 NVL을 넣는다.

SQLD 시험 준비 가이드

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

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

[SQLD] NVL SQL 기본 기출 #3675 | 문어CBT