SQLDSQL 활용난이도 2MCQ

SQLD SQL 활용 기출문제 #1335

문제

다음 SQL의 실행 결과로 가장 적절한 것은?

SQL
[SCORES] STUDENT, SUBJECT, SCORE '김철수', 'MATH', 85 '김철수', 'SCIENCE', 90 '김철수', 'ENGLISH', 78 '이영희', 'MATH', 92 '이영희', 'SCIENCE', 88 '이영희', 'ENGLISH', 85 SELECT * FROM SCORES PIVOT ( AVG(SCORE) FOR SUBJECT IN ('MATH', 'SCIENCE', 'ENGLISH') );

① 6행 3열의 결과 테이블 ② 2행 4열의 결과 테이블 (STUDENT, MATH, SCIENCE, ENGLISH) ③ 오류 발생 (PIVOT 구문 잘못됨) ④ 3행 3열의 결과 테이블

정답

2

해설

②번이 정답입니다. PIVOT 연산은 행 형태의 데이터를 열 형태로 변환합니다. 원본 테이블에서 STUDENT별로 각 SUBJECT의 SCORE를 열로 펼쳐서 김철수와 이영희 각각 한 행씩, 총 2행이 됩니다. 컬럼은 STUDENT, MATH, SCIENCE, ENGLISH로 4개가 됩니다. ①번은 원본 데이터의 행 수이고, ③번은 이제 문법적으로 올바른 구문이므로 오류가 발생하지 않으며, ④번은 행 수가 잘못되었습니다.

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

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

[SQLD] SQL 활용 기출 #1335 | sqldpass