SQL - 문제 미리보기

문제 1615

medium
다음 SQL 문은 무엇을 조회하나요?
```sql
SELECT * FROM Products
WHERE Price > (SELECT AVG(Price) FROM Products);
```
A. 평균 가격과 동일한 상품들
B. 평균 가격보다 비싼 상품들
C. 평균 가격보다 저렴한 상품들
D. 문법 오류로 실행되지 않음

정답: B

서브쿼리(Sub-query)와 `AVG()` 함수의 조합:
• 서브쿼리: `(SELECT AVG(Price) FROM Products)`
• 메인쿼리: 서브쿼리 결과와 비교하여 조건에 맞는 상품 조회

실행 과정:

1단계: 서브쿼리 실행
```sql
SELECT AVG(Price) FROM Products;
-- 결과: 18.07 (평균 가격)
```
2단계: 메인쿼리 실행
```sql
SELECT * FROM Products WHERE Price > 18.07;
```
3단계: 조건에 맞는 상품 조회
```sql
-- Price > 18.07인 상품들
ProductID | ProductName | Price
2 | Chang | 19
4 | Chef Anton's Cajun... | 22
5 | Chef Anton's Gumbo Mix | 21.35
```
서브쿼리의 장점:
• 동적 기준값: 평균값이 변해도 자동으로 적용
• 정확한 비교: 실시간 계산된 평균값 사용
• 재사용성: 다른 쿼리에서도 동일한 패턴 활용

💡 학습 팁

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