IT수업/데이터베이스

it 수업 6주차 (18) if, case when 조건문

워제하 2024. 2. 1. 13:47

 

● IF조건문

 

먼저 set@변수명 으로 변수를 지정해 준다.

그리고 select if(비교값, 참, 거짓); 으로 출력해준다.

 

select if(@var1>@var2,concat(@var1,'이 더 큽니다'),concat(@var2,'이 더 큽니다')); 하면 var1이 var2보다 작으므로 거짓으로 'var2이 더 큽니다' 가 출력이 된다.

 

 

 

buytbl에서 amount 값이 5보다 크면 우수고객 아니라면 일반고객이 나오도록 출력해볼 것이다.

 

select * ,if(amount>5,'우수고객','일반고객') as '등급' from buytbl;

 

 

 

다음은  usertbl에 키가 170이상이라면 '170이상' 아니라면 '170미만'이 출력되도록 할 것이다.

 

select *,if(height>=170,'170이상', '170미만') from usertbl;

 

 

 

 

● CASE 조건문

 

case 뒤에 값이 1이 오면 '일', 5가 오면 '오', 10이 오면 '10' 1,5,10이 아니라면 '몰라'가 출력되도록 해본다.

 

select case 10 when 1 then '일' when 5 then '오' when 10 then '십' else '몰라' end as 'CASETEST';

 

 

select case 6 when 1 then '일' when 5 then '오' when 10 then '십' else '몰라' end as 'CASETEST';

 

 

 

다음은 테이블 buytbl에서 amount값이 10 이상이면 'VIP', 5 이상이면 '우수', 아니라면 '일반'으로 등급을 나눠 볼 것이다. 

 

select *, case when amount>=10 then 'VIP' when amount>=5 then '우수' else '일반' end as '등급' from buytbl;