IT 소스/MariaDB

[MariaDB] SQL 쿼리 - CASE

한량이야기 2023. 2. 16. 12:54
반응형

안녕하세요. 경제적, 시간적 자유를 꿈꾸는 한량입니다.

CASE 함수는 일련의 조건을 지정하고 해당 조건에 따라 결과 값을 반환하는 함수입니다. 

CASE 함수를 사용하면 복잡한 조건문을 간단하게 작성할 수 있습니다.

CASE 문은 다음과 같은 구문을 사용합니다.

SELECT 
    CASE
      WHEN condition_1 THEN result_1
      WHEN condition_2 THEN result_2
      ...
      WHEN condition_n THEN result_n
      ELSE default_result
    END
FROM TABLE

여기서 condition은 조건을 나타내는 표현식입니다. 

result는 해당 조건에 대한 결과 값을 나타냅니다. 
만약, 'condition_1'이 참이면 'result_1'을 반환하고, 

'condition_2'가 참이면 'result_2'를 반환합니다. 
'default_result'는 모든 조건에 맞지 않을 경우 반환할 값입니다. 
WHEN 절은 필수이며, ELSE 절은 선택사항입니다.

 

다음 쿼리는 'score'가 90 이상이면 'A', 80 이상이면 'B', 70 이상이면 'C',

그 이외에는 'F'를 반환합니다.

SELECT name, score,
    CASE
        WHEN score >= 90 THEN 'A'
        WHEN score >= 80 THEN 'B'
        WHEN score >= 70 THEN 'C'
        ELSE 'F'
    END AS grade
FROM students;

CASE 함수는 복잡한 조건을 처리할 때 유용합니다. 

여러 개의 WHEN 절을 추가하면서 원하는 만큼 조건문을 확장할 수 있습니다. 

또한 CASE 함수는 SQL 문의 다른 함수와 함께 사용할 수 있으므로,

 다양한 기능을 수행하는 데 활용됩니다.

반응형