다음 두 쿼리의 결과 차이점을 올바르게 설명한 것은?
다음 두 쿼리의 결과 차이점을 올바르게 설명한 것은?
-- 쿼리 A
SELECT ProductName,
CASE
WHEN Price > 50 THEN 'Expensive'
WHEN Price > 20 THEN 'Moderate'
WHEN Price > 0 THEN 'Cheap'
END AS PriceCategory
FROM Products;
-- 쿼리 B
SELECT ProductName,
CASE
WHEN Price > 50 THEN 'Expensive'
WHEN Price > 20 THEN 'Moderate'
WHEN Price > 0 THEN 'Cheap'
ELSE 'Invalid'
END AS PriceCategory
FROM Products;
정답: B
⦁ ELSE 절의 유무가 핵심 차이점입니다
⦁ 쿼리 A (ELSE 절 없음):
⦁ Price가 0 이하이거나 NULL인 경우 어떤 조건도 만족하지 않습니다
⦁ ELSE 절이 없으므로 NULL을 반환합니다
⦁ 쿼리 B (ELSE 절 있음):
⦁ 모든 조건이 거짓이어도 ELSE 절의 'Invalid'를 반환합니다
⦁ NULL이 반환되는 경우가 없습니다
💡 학습 팁
이 문제를 포함한 MySQL 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.