728x90

if-then은 주로 단일 조건을 다루는 데 사용,

예를 들어, "만약 A라면 B를 실행하고, 그렇지 않으면 C를 실행" 하는 경우에 사용

 

case-when-then은 여러 조건을 처리하거나 여러 값을 반환해야 하는 경우에 사용, 여러 조건에 따라 다른 결과를 반환하는 복잡한 분기 처리에 유용

 

간단한 단일 조건을 다룰 때는 if-then을 사용하고, 여러 조건이나 값에 따라 다른 결과를 반환해야 할 때는 case-when-then을 사용하는 것이 좋다

If-then

use khw;

set @var1=10;
set @var2=20;

select @var1 from emp;
select @var1+@var2;

-- IF문 
delimiter //
create procedure pr1()
begin
	if 5=5 then
		select '5는 5와 같다';
	end if;
    end //
delimiter ;

call pr1();

delimiter //
create procedure pr2()
begin
	declare num int; -- 변수선언
    set num =100; -- 변수에 값 대입
    if num=100 then
		select '100이다';
    else
		select '100아니다';
    end if;
end //
delimiter ;
call pr2();    

Case-When-Then

-- case when then

delimiter //
create procedure pr3()
begin
	declare num int; -- 변수선언
    declare grade char(1); -- 변수선언
    set num=80; -- 값 대입
case 
	when num >= 90 then
		set grade = 'A';
	when num >= 80 then
		set grade = 'B';
	else
		set grade = 'F';
end case;
	select num,grade;
end //
delimiter ;

call pr3();

Set-While-do

delimiter //
create procedure pr4()
begin
	declare i int;
    declare sum int;
    set i=1;
    set sum=0;
    
    while(i<=10) do
		set sum=sum+i;
        set i=i+1;
    end while;
    
    select sum;
end //
delimiter ;
    
call pr4();
728x90

'DBMS > MySQL' 카테고리의 다른 글

[MySQL] 커서(Cursor)  (0) 2024.03.20
[MySQL] 트리거(Trigger)  (0) 2024.03.20
[MySQL] 쿼리 종합예시  (0) 2024.03.19
[MySQL] 스토어드 프로시저  (0) 2024.03.18
[MySQL] 뷰(View)  (0) 2024.03.18

+ Recent posts