다음 SQL 결과에서 NULL 로 표시되는 셀은 모두 몇 개인가?[배송… | [SQLD] SQL 개발자 기출유형 모의고사 3회 상세 페이지

1[SQLD] SQL 개발자 기출유형 모의고사 3회
다음 SQL 결과에서 NULL 로 표시되는 셀은 모두 몇 개인가?

[배송]

배송번호지역상태
1서울완료
2서울지연
3서울완료
4부산완료
5부산반송
6대구지연
7대구지연
8(null)완료
SELECT 지역,
       SUM(CASE WHEN 상태 = '완료' THEN 1 ELSE 0 END) AS 완료,
       COUNT(CASE WHEN 상태 = '반송' THEN 1 END) AS 반송,
       SUM(CASE WHEN 상태 = '지연' THEN 1 END) AS 지연
  FROM 배송
 GROUP BY 지역
 ORDER BY 지역;
1
3
2
5
3
1
4
2
해설

지연 열은 ELSE 가 없어 지연 건이 없는 부산과 지역 NULL 그룹에서 SUM 이 NULL 이 되고, 지역 NULL 그룹의 지역 셀까지 더해 NULL 셀은 3개이다.

반송 열은 COUNT 라 해당 건이 없으면 NULL 이 아닌 0이 되고, 완료 열은 ELSE 0 덕분에 모두 숫자이다.

  • 1개는 지역이 NULL 인 행도 하나의 그룹이 된다는 점을 놓친 경우이다.
  • 2개는 NULL 그룹의 지역 셀이나 지연 셀 중 하나만 센 경우이다.
  • 5개는 COUNT 도 대상이 없으면 NULL 을 준다고 보고 지역 셀을 빠뜨린 경우이다.

오류나 개정된 내용이 보이면 알려주세요

이어서 풀어보기

[SQLD] SQL 개발자 기출유형 모의고사 3회 50문항 이어서 보기문제·정답·해설을 한 페이지에서 이어서 볼 수 있어요SQLD SQL 개발자 실전 모의고사 암기장 전체 보기