搜寻式CASE语句¶
搜寻式CASE语句不同于一般CASE语句,一般语句通过选择器比较进行筛选,搜寻式CASE没有选择器,WHEN子句中的条件表达式如果为真,则执行THEN相应语句。相比于一般的CASE语句,搜寻式CASE更加灵活。
语法:
case ::=
参数:
expression PLOSCAR标量表达式
<statements> PLOSCAR语句列表
示例:搜寻式CASE语句¶
--清理环境
drop procedure case_search;
--创建过程
create or replace procedure case_search(a int,b int)as
begin
case
when a < b then
dbms_output.put_line(a || ' <' || b);
when a > b then
dbms_output.put_line(a || ' >' || b);
else
dbms_output.put_line(a || ' = ' || b);
end case;
end;
/
exec case_search(a=>1,b=>2);
--删除过程
drop procedure case_search;