문제
집합 연산자에 대한 설명으로 가장 적절하지 않은 것은?
① UNION 연산자는 합집합 결과에서 중복된 행을 하나의 행으로 만든다. ② UNION ALL 연산자는 집합 간의 결과가 중복되지 않는 경우 UNION과 결과가 동일하다. ③ UNION 연산자를 사용한 SQL은 각각의 집합에 GROUP BY 절을 사용할 수 있다. ④ UNION 연산자를 사용한 SQL은 각각의 집합에 ORDER BY 절을 사용할 수 있다.
정답
4번
해설
정답: 4. 집합 연산자를 사용할 때 ORDER BY는 일반적으로 전체 결과에 대해 마지막에 한 번만 사용할 수 있다.
오답 풀이
- 1번: UNION은 중복을 제거한다.
- 2번: 중복이 없다면 UNION과 UNION ALL의 결과는 동일할 수 있다.
- 3번: 각 SELECT 문 안에서 GROUP BY를 사용할 수 있다.
- 4번: 각 집합마다 ORDER BY를 자유롭게 사용할 수 있다는 설명은 부적절하다.
보충 개념 집합 연산에서는 각 SELECT 문의 컬럼 개수와 데이터 타입 호환성이 중요하다. 최종 정렬은 집합 연산 전체 결과에 대해 ORDER BY를 적용한다.