다음 SQL 의 실행 결과로 옳은 것은?강좌강좌코드강좌명K1SQL기초K… | [SQLD] SQL 개발자 기출유형 모의고사 2회 상세 페이지

1[SQLD] SQL 개발자 기출유형 모의고사 2회
다음 SQL 의 실행 결과로 옳은 것은?

강좌

강좌코드강좌명
K1SQL기초
K2모델링
K3튜닝
K4파이썬

수강

학번강좌코드상태
S1K1승인
S2K1대기
S3K1승인
S1K2대기
S4K3승인
S2K3취소
SELECT C.강좌코드, COUNT(E.학번) AS 인원
  FROM 강좌 C
  LEFT OUTER JOIN 수강 E
    ON C.강좌코드 = E.강좌코드
   AND E.상태 = '승인'
 GROUP BY C.강좌코드
 ORDER BY C.강좌코드;
1
강좌코드인원
K12
K20
K31
K40
2
강좌코드인원
K13
K21
K32
K40
3
강좌코드인원
K12
K21
K31
K41
4
강좌코드인원
K12
K31
해설

LEFT OUTER JOIN 에서 ON 절에 둔 상태 조건은 조인할 수강 행만 거를 뿐 왼쪽 강좌 행은 모두 남기므로 K2·K4 도 결과에 나타난다.

K2·K4 는 짝이 없어 수강 열이 NULL 이 되고, COUNT(E.학번)은 NULL 을 세지 않아 인원이 0이다.

  • K1·K3 만 남은 표는 상태 조건을 WHERE 에 둔 결과이다.
  • K2·K4 가 1인 표는 COUNT(*)로 NULL 행까지 센 결과이다.
  • K1 이 3인 표는 승인 조건 없이 모든 수강을 센 결과이다.

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

이어서 풀어보기

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