728x90
※ 문제 풀이를 하면서 SQL 복습 정리 ※
📖 참고 및 공식문서
CASE문
https://dev.mysql.com/doc/refman/8.0/en/case.html
MySQL :: MySQL 8.0 Reference Manual :: 15.6.5.1 CASE Statement
CASE case_value WHEN when_value THEN statement_list [WHEN when_value THEN statement_list] ... [ELSE statement_list] END CASE Or: CASE WHEN search_condition THEN statement_list [WHEN search_condition THEN statement_list] ... [ELSE statement_list] END CASE T
dev.mysql.com
1️⃣ Switch 문으로 사용하기
CASE case_value
WHEN when_value THEN statement_list
[WHEN when_value THEN statement_list] ...
[ELSE statement_list]
END
- case_value와 when_value를 비교한다.
- 표현식이 동일할 경우 해당 절의 THEN 절을 실행한다.
- 아무것도 해당이 안될 경우 ELSE 절을 실행한다.
- ELSE 문은 생략이 가능하지만 when_value가 존재하지 않는 값에 접근할 경우 Case not found for CASE statement error가 발생한다.
2️⃣ IF 문으로 사용하기
CASE
WHEN search_condition THEN statement_list
[WHEN search_condition THEN statement_list] ...
[ELSE statement_list]
END
- search_condition : 조건식
- 조건식이 true가 되면, 해당 THEN 절을 실행한다.
- ELSE 문은 생략이 가능하지만 search_value가 존재하지 않는 값에 접근할 경우 Case not found for CASE statement error가 발생한다.
728x90
'Language > SQL' 카테고리의 다른 글
[SQL] JOIN 정리 (MySQL) (0) | 2024.01.14 |
---|---|
[SQL] Aggregate & Mathematical Function 정리 (MySQL) (2) | 2024.01.03 |
[SQL] 문자열 비교함수 알아보기 (MySQL) (0) | 2023.12.21 |
[SQL] date 타입에 대해 알아보기 (MySQL) (0) | 2023.12.14 |