728x90
반응형
♣MySQL CASE 기본 사용법
♣설명
MySQL에서 CASE문은 프로그래밍 언어에서 스위치(switch)문과 비슷하지만,
다수의 조건에 하나의 반환 값은 동작하지 않습니다.
♣사용법
CASE
WHEN 조건
THEN '반환 값'
WHEN 조건
THEN '반환 값'
ELSE 'WHEN 조건에 해당 안되는 경우 반환 값'
END AS '변수명'
- WHEN과 THEN은 한쌍이어야 한다.
- WHEN과 THEN은 다수가 존재할 수 있다.
- ELSE가 존재하면 모든 조건에 해당하지 않는 경우에 반환 값을 설정할 수 있다.
- ELSE가 존재하지 않고, 조건에 맞지 않아서 반환 값이 없으면 NULL을 반환한다.
♣예제 쿼리
♣예제 테이블 : hero_collection
idx |
type |
name |
1 |
1 |
안중근 |
2 |
1 |
윤봉길 |
3 |
2 |
김유신 |
4 |
2 |
이순신 |
5 |
3 |
이성계 |
6 |
3 |
왕건 |
7 |
4 |
반갑수 |
♣쿼리 (Query)
SELECT idx,
CASE WHEN type = '1'
THEN '의사'
WHEN type = '2'
THEN '장군'
WHEN type = '3'
THEN '왕'
ELSE '일반인'
END AS hero_type, name
FROM hero_collection;
♣결과
idx1 |
hero_type |
name |
1 |
의사 |
안중근 |
2 |
의사 |
윤봉길 |
3 |
장군 |
김유신 |
4 |
장군 |
이순신 |
5 |
왕 |
이성계 |
6 |
왕 |
왕건 |
7 |
일반인 |
반갑수 |
출처: https://extbrain.tistory.com/46 [확장형 뇌 저장소]
728x90
반응형
'Study > SQL' 카테고리의 다른 글
[SQL] INNER JOIN과 OUTER JOIN의 차이 (0) | 2022.03.03 |
---|---|
[MySQL] INSERT 시에 중복(Duplicate) 키 에러가 난다면… (0) | 2020.11.30 |
[MySql] 날짜 비교 (0) | 2020.03.24 |
[MySql] 테이블 이름 변경 (0) | 2020.03.19 |
MYSQL 컬럼명 변경, 컬럼 타입 변경, 컬럼 추가, 컬럼 삭제 (0) | 2020.03.12 |
댓글