oracel if else 用法

oracle條件分支用法

a.if...then

b.if...then...else

c.if...then... elsif....else

實例1

問題:編寫一個過程,可以輸入一個僱員名,如果該僱員的工資低於2000,就給該員工工資增加10%
create or replace procedure sp_pro6(spName varchar2)

is v_salemp_copy.sal%type;

begin  

selectsal into v_sal from emp_copy where ename=spName;

ifv_sal<2000 then

updateemp_copy setsal=sal*1.1 where ename=spName;

end if;

end;

實例2


問題:編寫一個過程,可以輸入一個僱員名,如果該僱員的補助不是0就在原來的基礎上增加100;如果補助爲0就把補助設爲200

create or replace procedure sp_pro6(spName varchar2) is

v_comm emp_copy.comm%type;

begin

selectcomm into v_comm from emp_copy where ename=spName;

ifv_comm<>0 then

updateemp_copy setcomm=comm+100 where ename=spName;

else

updateemp_copy setcomm=comm+200 where ename=spName;

end if;

end;

實例3

多重條件分支
if
then
elsifthen.


問題:編寫一個過程,可以輸入一個僱員編號,如果該僱員的職位是PRESIDENT


給他的工資增加1000,如果該僱員的職位是MANAGER就給他的工資增加500,其它


職位的僱員工資增加200


create or replace proceduresp_pro6(spNo number) is

v_job emp_copy.job%type;

begin

selectjob into v_job from emp_copy where empno=spNo;

ifv_job='PRESIDENT'
then

updateemp_copy setsal=sal+1000 where empno=spNo;

elsifv_job='MANAGER'
then

updateemp_copy setsal=sal+500 where empno=spNo;

else

updateemp_copy setsal=sal+200 where empno=spNo;

end if;

end;

發佈了7 篇原創文章 · 獲贊 2 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章