탐구생활/SQL 탐구생활

SQL 기초 구문 배우기(SQL CASE)

daily uza 2023. 6. 19.
728x90

SQL CASE

SQL CASE는 조건을 거치고 첫 번째 조건이 충족되면 값을 반환합니다(예: if-then-else 문). 따라서 조건이 참이면 읽기를 중지하고 결과를 반환합니다. 참인 조건이 없으면 ELSE 절의 값을 반환합니다. ELSE 부분이 없고 참인 조건이 없으면 NULL을 반환합니다.

SQL CASE 기본예제

CASE
    WHEN condition1 THEN result1
    WHEN condition2 THEN result2
    WHEN conditionN THEN resultN
    ELSE result
END;

SQL CASE 실습하기

다음은 Northwind 샘플 데이터베이스의 "OrderDetails" 테이블에서 선택한 항목입니다.

OrderDetailID OrderID ProductID Quantity
1 10248 11 12
2 10248 42 10
3 10248 72 5
4 10249 14 9
5 10249 51 40

다음 SQL은 조건을 살펴보고 첫 번째 조건이 충족되면 값을 반환합니다.

SELECT OrderID, Quantity,
CASE
    WHEN Quantity > 30 THEN 'The quantity is greater than 30'
    WHEN Quantity = 30 THEN 'The quantity is 30'
    ELSE 'The quantity is under 30'
END AS QuantityText
FROM OrderDetails;

다음 SQL문은 CITY 오름차순으로 정렬하지만 CITY의 값이 NULL인 경우 Country 오름차순 반환

SELECT CustomerName, City, Country
FROM Customers
ORDER BY
(CASE
    WHEN City IS NULL THEN Country
    ELSE City
END);

Written by [DAILY UZA]

고양이
728x90

댓글

💲 추천 글