문제
다음 SQL의 결과로 가장 적절한 것은?
SQL[SALES] REGION, AMOUNT 'North', 100 'South', 200 'East', 300 SELECT REGION, SUM(AMOUNT) FROM SALES UNION ALL SELECT 'Total', SUM(AMOUNT) FROM SALES ORDER BY REGION;
① 4행이 REGION 알파벳 순으로 정렬되어 출력 ② 3행이 REGION 알파벳 순으로 정렬되어 출력 ③ 4행이 AMOUNT 크기 순으로 정렬되어 출력 ④ 오류 발생 (GROUP BY 없이 집계함수 사용)
정답
4번
해설
④번이 정답입니다. 첫 번째 SELECT문에서 'SELECT REGION, SUM(AMOUNT) FROM SALES'는 GROUP BY 절 없이 일반 컬럼(REGION)과 집계함수(SUM)를 함께 사용했습니다. 이는 SQL 표준에서 오류로 처리됩니다. GROUP BY 절이 없으면 집계함수는 전체 테이블을 하나의 그룹으로 처리하여 단일 값을 반환하는데, 일반 컬럼인 REGION은 어떤 값을 선택해야 할지 결정할 수 없기 때문입니다. 따라서 이 쿼리는 실행 시 오류가 발생합니다.