一、一个表达式与多个值进行比较
1.结构
case 条件表达式
when 条件 then 代码1
when 条件 then 代码2
else 代码3
end [case];
2.例子:
create or replace procedure case_grade1(grade varchar(10)) as
declare
v varchar(10);
begin
v:=
case grade
when 'A' then '优秀'
when 'B' then '良好'
when 'C' then '合格'
when 'D' then '不合格'
else 'no such grade'
end;
print(v);
end;
call case_grade1('A');结果:优秀
二、对多个条件进行计算,选择第一个为真的条件
1.结构:
case
when 条件表达式 then 代码1
when 条件表达式 then 代码2
else 代码3
end [case]
2.例子:
create or replace procedure case_grade2(grade varchar(10)) as
declare
v varchar(10);
begin
v:=
case
when grade ='A' then '优秀'
when grade = 'B' then '良好'
when grade = 'C' then '合格'
when grade = 'D' then '不合格'
else 'no such grade'
end;
print(v);
end;
call case_grade2('D');结果:不合格