SQLDSQL 기본난이도 1MCQ

SQLD SQL 기본 기출문제 #800

문제

다음 SQL 문 중에서 표준 SQL 문법에 위배되어 일부 DBMS에서 오류가 발생할 가능성이 가장 높은 것은?

① SELECT NAME FROM STUDENT ORDER BY AGE; ② SELECT NAME, COUNT(*) FROM STUDENT; ③ SELECT NAME FROM STUDENT ORDER BY NAME DESC; ④ SELECT * FROM STUDENT ORDER BY SCORE;

정답

2

해설

②번이 정답입니다. GROUP BY 절 없이 집계함수 COUNT(*)와 일반 컬럼 NAME을 함께 SELECT하고 있어, 표준 SQL 문법에 위배되며 대부분의 DBMS에서 오류가 발생합니다. 집계함수를 사용할 때는 반드시 GROUP BY 절을 사용하거나 모든 컬럼이 집계함수여야 합니다. ①번은 SELECT 절에 없는 컬럼으로 ORDER BY하는 것이지만 표준 SQL에서는 허용됩니다. ③번은 SELECT 절의 NAME으로 정렬하므로 완전히 표준을 준수합니다. ④번은 SELECT *로 모든 컬럼을 선택했으므로 SCORE 컬럼도 포함되어 정렬이 가능합니다.

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

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

[SQLD] SQL 기본 기출 #800 | sqldpass