04. 조건에 따라 포맷을 다르게 변경해야 한다면 (IF, CASE)
학습 목표: 조건에 따라 다른 연산을 하는 방법을 알아봅시다
’내가 원하는 범주’ 를 조건으로 주고, 해당 범주에 적용하고 싶은 것을 지정해 주는 방식이 가능하다.
조건에 따라 다른 방법을 적용하고 싶을 때 - 함수명: if
if(조건, 조건을 충족할 때, 조건을 충족하지 못할 때)
실습1. 음식 타입을 ‘Korean’ 일 때는 ‘한식’, ‘Korean’ 이 아닌 경우에는 ‘기타’ 라고 지정
select restaurant_name,
cuisine_type "원래 음식 타입",
if(cuisine_type='Korean', '한식', '기타') "음식 타입"
from food_orders
실습2. 조건을 여러가지 지정하고 싶을 때 - 함수: case
조건을 지정하다보면 2개 이상의 지정을 해야할때가 생긴다.
그럴 때는 case문을 사용해서 여러번의 if문을 적용한 효과를 한번에 낼 수 있다.
#사용방법
case when 조건1 then 값(수식)1
when 조건2 then 값(수식)2
else 값(수식)3
end
실습1. 주소의 시도를 ‘경기도’ 일때는 ‘경기도’, ‘특별시’ 혹은 ‘광역시’ 일 때는 붙여서, 아닐 때는 앞의 두 글자만 사용
select restaurant_name,
addr,
case when addr like '%경기도%' then '경기도'
when addr like '%특별%' or addr like '%광역%' then substring(addr, 1, 5)
else substring(addr, 1, 2) end "변경된 주소"
from food_orders
'내일배움캠프 AI 웹 프로그래밍' 카테고리의 다른 글
내일배움캠프 70일차_SQL 실습이 곧 성과를 나타낸다 (0) | 2023.11.06 |
---|---|
내일배움캠프 69일차_SQL로 User Segmentation (0) | 2023.11.06 |
내일배움캠프 67일차_SQL 문자데이터 바꾸고 GROUP BY 사용 (0) | 2023.11.06 |
내일배움캠프 66일차_SQL 배울때 필요한 프로그램 설치 (0) | 2023.11.03 |
내일배움캠프 65일차_SQL로 가공하기 (0) | 2023.11.03 |