【练习】26. 存储流程控制-判断

阅读 32

2022-02-11

#---------------if语句---------------------------
delimiter $$
create PROCEDURE proc11(in score int)
begin
	if score < 60 then select '不及格';
	ELSEIF score >= 60 and score <= 100 then select '及格';
	else select '输入错误';
	end if; 
end $$
delimiter;
call proc11(111)

#输入员工名,判断薪资
delimiter $$
create procedure proc12(in e_name VARCHAR(20))
begin
 declare d_sal double;
 declare ans VARCHAR(20);
 select sal into d_sal from emp where ename = e_name;
 if d_sal < 1000 then set ans = '试用薪资';
 else set ans = '正式薪资';
 end if;
 select ans;
end $$
delimiter ;
call proc12('SMITH')

#---------------case语句---------------------------
delimiter $$
create PROCEDURE proc13(in e_name varchar(20))
begin
 declare dept_no int;
 declare dept_name varchar(20);
 select deptno into dept_no from emp where ename = e_name;
 case 
	when dept_no = 10 then set dept_name = 'a';
	when dept_no = 20 then set dept_name = 'b';
	when dept_no = 30 then set dept_name = 'c';
	else set dept_name = 'error';
 end case;
select dept_name;
end $$
delimiter ;

call proc13('SMITH');

精彩评论(0)

0 0 举报