SQL - 문제 미리보기

문제 1669

easy
UNION을 사용할 때 반드시 만족해야 하는 조건이 아닌 것은?
A. 모든 SELECT 문의 컬럼 수가 같아야 한다
B. 컬럼의 데이터 타입이 유사해야 한다
C. 컬럼의 순서가 같아야 한다
D. 모든 SELECT 문에서 같은 테이블을 사용해야 한다

정답: D

UNION의 필수 조건들: 1. 컬럼 수 일치 (필수): ```sql -- 올바른 예시 (컬럼 수 동일) SELECT CustomerName, City FROM Customers -- 2개 컬럼 UNION SELECT SupplierName, City FROM Suppliers; -- 2개 컬럼 -- 잘못된 예시 (컬럼 수 다름) SELECT CustomerName, City, Country FROM Customers -- 3개 컬럼 UNION SELECT SupplierName, City FROM Suppliers; -- 2개 컬럼 (오류!) ``` 2. 데이터 타입 호환성 (필수): ```sql -- 올바른 예시 (타입 호환) SELECT CustomerName, CustomerID FROM Customers -- 문자열, 숫자 UNION SELECT SupplierName, SupplierID FROM Suppliers; -- 문자열, 숫자 -- 잘못된 예시 (타입 불일치) SELECT CustomerName, OrderDate FROM Orders -- 문자열, 날짜 UNION SELECT SupplierName, SupplierID FROM Suppliers; -- 문자열, 숫자 (문제 가능) ``` 3. 컬럼 순서 일치 (필수): ```sql -- 올바른 예시 (순서 일치) SELECT Name, City FROM Customers -- 이름, 도시 순서 UNION SELECT Name, City FROM Suppliers; -- 이름, 도시 순서 -- 잘못된 예시 (순서 다름) SELECT Name, City FROM Customers -- 이름, 도시 순서 UNION SELECT City, Name FROM Suppliers; -- 도시, 이름 순서 (의미 혼동) ``` 4. 같은 테이블 사용 (필수 아님) - 정답: ```sql -- 서로 다른 테이블 사용 (정상) SELECT City FROM Customers UNION SELECT City FROM Suppliers; -- 같은 테이블의 다른 조건 (정상) SELECT City FROM Customers WHERE Country = 'Germany' UNION SELECT City FROM Customers WHERE Country = 'France'; ```

💡 학습 팁

이 문제를 포함한 SQL 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.