다음 쿼리에서 ORDER BY 절에 사용된 CASE 문의 목적은 무엇인가요?

과목: MySQL

문제 번호: 3187

medium
다음 쿼리에서 ORDER BY 절에 사용된 CASE 문의 목적은 무엇인가요?
SELECT CustomerName, City, Country
FROM Customers
ORDER BY
(CASE
    WHEN City IS NULL THEN Country
    ELSE City
END);
A. City와 Country를 함께 표시하기 위해서입니다
B. City가 NULL인 경우 Country로, 그렇지 않으면 City로 정렬하기 위해서입니다
C. City와 Country 중 더 긴 값으로 정렬하기 위해서입니다
D. NULL 값을 가진 레코드를 제외하기 위해서입니다

정답: B



⦁ ORDER BY 절에서 CASE 문을 사용하여 동적 정렬 기준을 설정합니다

⦁ 로직 분석:
⦁ City가 NULL이면 Country 값을 정렬 기준으로 사용
⦁ City가 NULL이 아니면 City 값을 정렬 기준으로 사용

⦁ 이렇게 하면 City 정보가 있는 고객은 City로, 없는 고객은 Country로 정렬됩니다

⦁ NULL 값 때문에 정렬에서 제외되지 않고 대체값으로 정렬하는 유용한 기법입니다

💡 학습 팁

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