編寫控制結構之case語句

2021-08-29 14:53:17 字數 1498 閱讀 8840

當需要執行多重分支操作時,使用case語句更簡潔,且執行效率更高。

使用case語句又2種方式,第一種是使用單一選擇符進行等值比較,第二種是使用多種提交進行非等值比較

使用單一選擇符進行等值比較:

例如:declare

v_no int:=&no;

v_sal emp.sal%type;

v_name emp.ename%type;

begin

select sal,ename into v_sal,v_name from emp where emp.empno=v_no;

case v_sal

when 1000 then

dbms_output.put_line(v_name||'的工資是'||v_sal);

when 2000 then

dbms_output.put_line(v_name||'的工資是'||v_sal);

when 3000 then

dbms_output.put_line(v_name||'的工資是'||v_sal);    

when 4000 then

dbms_output.put_line(v_name||'的工資是'||v_sal);

when 5000 then

dbms_output.put_line(v_name||'的工資是'||v_sal);

else

dbms_output.put_line('不在範圍內');          

end case;

end;

使用多種提交進行非等值比較

例如:declare

v_no int:=&no;

v_sal emp.sal%type;

v_name emp.ename%type;

begin

select sal,ename into v_sal,v_name from emp where emp.empno=v_no;

case

when v_sal<1000 then

update emp set sal=sal*0.1 where empno=v_no;

when v_sal<2000 then

update emp set sal=sal*0.2 where empno=v_no;

when v_sal<3000 then

update emp set sal=sal*0.3 where empno=v_no;    

when v_sal<4000 then

update emp set sal=sal*0.4 where empno=v_no;

when v_sal<5000 then

update emp set sal=sal*0.5 where empno=v_no;

else

dbms_output.put_line('不在範圍內');          

end case;

end;

shell邏輯控制語句之case

case分支判斷結構 語法 case 變數名稱 in value1 statement statement value2 statement statement value3 statement statement statement statement esac 編寫指令碼,判斷使用者輸入的字串 ...

使用控制結構 條件分支語句 CASE語句

當處理多重條件分支時,不僅可以使用if語句,而且可以使用case語句。因為使用case語句更加簡潔,而且執行效率也更好,所以建議使用case 語句。注意 為了避免case not found 例外,在編寫case語句時應該帶有else 子句。declare v deptno emp.deptno t...

shell 流程控制 case語句

shell case語句為多選擇語句。可以用case語句匹配乙個值與乙個模式,如果匹配成功,執行相匹配的命令。case語句格式如下 case 值 in 模式1 command1 command2 commandn 模式2 command1 command2 commandn esaccase工作方式...