Oracle Case 用法及注意事项
Oracle Case 两种用法:
注意事项:
在条件中一定要增加其他条件的处理或者默认值,否则遇到未包含条件会抛异常>在条件中一定要增加其他条件的处理或者默认值,否则遇到未包含条件会抛异常
1. 查询语句
- 语法:
select case
fieldnamewhen
exp1then
result1when
exp2then
result2end from
tbname
示例:
select id,name,case when sal>3500 then '中等收入' when sal>2500 and sal<=3500 then '低等收入' when sal<2500 then '低保户' else '高等收入' end sal
from t1 ;
2. 作为条件
- 语法:
case exp when exp1 then statement1; when exp2 then statement2;else statementOther; end case; --注意这里的 end case
- 示例
declare
v1 varchar2(30);
begin
v1:=&color;
case v1 when '红色' then dbms_output.put_line('太阳');
when '蓝色' then dbms_output.put_line('大海');
else dbms_output.put_line('不知道 '); --这里要增加其他条件的处理,否则遇到未包含条件会抛异常
end case;
end;