SQL - 문제 미리보기

문제 1696

hard
다음 두 쿼리의 결과를 올바르게 비교한 것은? 쿼리 A: ```sql SELECT ProductName FROM Products WHERE Price > ANY (SELECT Price FROM Products WHERE CategoryID = 1); ``` 쿼리 B: ```sql SELECT ProductName FROM Products WHERE Price > ALL (SELECT Price FROM Products WHERE CategoryID = 1); ``` CategoryID가 1인 상품들의 가격이 [18, 19]라고 가정
A. 쿼리 A는 가격이 18 초과인 상품들, 쿼리 B는 가격이 19 초과인 상품들을 반환
B. 쿼리 A는 가격이 19 초과인 상품들, 쿼리 B는 가격이 18 초과인 상품들을 반환
C. 두 쿼리 모두 동일한 결과를 반환
D. 쿼리 A는 모든 상품을 반환하고, 쿼리 B는 아무것도 반환하지 않음

정답: A

ANY와 ALL의 차이점을 구체적인 데이터로 비교 분석: 주어진 조건: • CategoryID가 1인 상품들의 가격: [18, 19] • 두 쿼리 모두 이 가격들과 비교 쿼리 A 분석 (`> ANY`): ```sql WHERE Price > ANY (18, 19) ``` • 18 또는 19 중 하나라도 보다 크면 TRUE • 18보다 크기만 하면 조건 만족 (19보다 클 필요 없음) • 결과: 가격이 18 초과인 모든 상품 쿼리 B 분석 (`> ALL`): ```sql WHERE Price > ALL (18, 19) ``` • 18 그리고 19 모두 보다 커야 TRUE • 19보다도 커야 조건 만족 (더 큰 값인 19를 기준으로) • 결과: 가격이 19 초과인 모든 상품

💡 학습 팁

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