문제
다음 중 지점별로 매출액의 합계를 구하여 그 합계가 1,000만원 이상인 지점만 표시하는 SQL문에 반드시 필요한 구문이 아닌 것은?
① GROUP BY 절 ② HAVING 절 ③ ORDER BY 절 ④ SELECT 문
정답
3번
해설
정답: 3. 지점별로 묶는 GROUP BY, 그룹 합계 조건을 거는 HAVING, 결과를 표시하는 SELECT는 반드시 필요하지만, 정렬을 위한 ORDER BY는 반드시 필요한 구문이 아니다.
오답 풀이
- 1번: 지점별로 묶으려면 GROUP BY가 필요하므로 반드시 필요하다.
- 2번: 그룹의 합계에 조건을 거는 HAVING이 필요하므로 반드시 필요하다.
- 3번: 정렬용 ORDER BY는 없어도 결과를 낼 수 있으므로 반드시 필요한 구문이 아니다.
- 4번: 결과를 표시하는 SELECT 문은 반드시 필요하다.
보충 개념 그룹 전체에 대한 조건은 HAVING, 개별 행에 대한 조건은 WHERE로 지정한다.