[SQL] 조건문 작성하기

hanahana·2023년 1월 13일
0

case를 사용한 조건문

특정조건을 만족할때의 출력을 넣을수있다,

catgegoryname
1코카콜라
2초콜릿
1환타
2홈런볼

이런 데이터베이스가 있을 때
category가 1일때는 음료, 2일때는 과자라고 지정하고싶다면 case whenb을 사용하면된다.

select case
			when category = 1 then '음료'
            when category = 2 then '과자'
            else '기타' //위의 조건을 충족하지 않을때
      end as 종류 ,  * //end로 조건문이 끝난것을 알려야하고 as로 별칭을 붙여준다.
from tbl
	

이렇게 작성했다면

종류catgegoryname
음료1코카콜라
과자2초콜릿
음료1환타
과자2홈런볼

라는 내가 원하는 결과를 얻을수 있게된다.

두가지 조건을 만족시키는 조건문

select case
			when category = 1 and ohterColumn = 'value' then '음료'
            //이런식으로 2가지의 조건을 and로 엮어주면 여러가지 조건이 참일때의 결과를 얻을수있다.
            when category = 2 then '과자'
            else '기타' 
      end as 종류 ,  * 
from tbl
	

group by 사용해보기

select case
			when category = 1 then '음료'
            when category = 2 then '과자'
            else '기타' 
      end as 종류 ,  count(*)
from tbl
group by 종류
종류count(*)
음료2
과자2

내가 case로 만든 새로운 컬럼인 종류를 그룹으로 묶어 count를 하게된다면 이런형식으로 case문을 그룹으로 지정할수있다.
하지만 case문은 길기때문에 as로 정해진 새로운 이름을 group by 에 적어준다.

본 내용은 데이터리안 'SQL 데이터 분석 캠프 입문반' 을 수강하며 작성한 내용입니다.

profile
hello world

0개의 댓글