개발자 끄적끄적

case 본문

MySQL

case

햏치 2023. 3. 8. 00:26

<CASE>
[첫 번째 유형]
case value
  when c1 then p1;
  when c2 then p2;
  ... 
  else
   p3;
end case;
- c1, c2는 value에 대응되는 상수값
- p1, p2, p3는 처리 내용

ex) 
create procedure case_test1()
begin 
  declare score int default 0;
  declare str varchar(100);

  set score = 80;
  case score
    when 80 then set str = '팔십';
    when 70 then set str = '칠십';
  end case
  select score, str;
end;


[두 번째 유형]
case
  when c1 then p1
  when c2 then p2
  else p3
end case;
- c1, c2는 범위를 갖는 조건식

ex)
create procedure case_test2()
begin
  declare score int default 0;
  declare str varchar(100);

  set score = 80;
  case
    when score>=90 then set str='A';
    when score>=80 then set str='B';
    when score>=70 then set str='C';
    else set str='F';
  end case;
  select score, str;
end;

'MySQL' 카테고리의 다른 글

constraint  (0) 2023.03.08
procedure  (0) 2023.03.08
무결성 제약 조건  (0) 2023.03.08