임의의 조건에 따라 독자적으로 변환 처리를 지정해 데이터를 변환하고 싶은 경우 case문 이용
[SYNTAX]
CASE
WHEN 조건식 1 THEN 식 1
WHEN 조건식 2 THEN 식 2
ELSE 식 3
END
when절에는 참과 거짓을 반환하는 조건식 기술
해당 조건을 만족하여 참이 되는 경우 then절에 기술한 식이 처리됨
when절에 기술한 어느 조건식에도 만족하지 못하는 경우 else절에 기술한 식이 처리됨
else는 생략 가능하며, 생략했을 경우 else null로 간주됨
null값을 0으로 변환하는 경우라면 위의 case문보다는 coalesce 함수가 더 간편하다.
●검색 case ●
● 단순 case ●
case문은 select 구 이외에도 where 구, order by 구 등 어디에나 사용될 수 있다.
case 사용 시 주의사항
else를 생략하면 else null이 되어 상정한 것 이외의 데이터가 들어오면 null로 반환되니 생략하지 않는 편이 낫다.
단순 case문에서는 null값을 비교할 수 없으므로 검색 case를 이용해야 한다.
※ 한빛미디어의 'SQL첫걸음' 책을 보고 공부한 내용을 정리하고 있습니다.
'Language > MySQL' 카테고리의 다른 글
[MySQL] 삭제하기 - DELETE (1) | 2022.09.30 |
---|---|
[MySQL] 행 추가하기 - INSERT (0) | 2022.09.28 |
[MySQL] 날짜 연산 (1) | 2022.09.22 |
[MySQL] 문자열 연산 (0) | 2022.09.21 |
[MySQL] 수치 연산 (0) | 2022.08.12 |