zoukankan      html  css  js  c++  java
  • oracle 之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_sal emp_copy.sal%type;

    begin

    select sal into v_sal from emp_copy where ename=spName;

    if v_sal<2000 then

    updateemp_copy set sal=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

    select comm into v_comm from emp_copy where ename=spName;

    if v_comm<>0 then

    updateemp_copy set comm=comm+100 where ename=spName;

    else

    updateemp_copy set comm=comm+200 where ename=spName;

    end if;

    end;

    实例 3

    多重条件分支
    if
    then
    elsif then.


    问题:编写一个过程,可以输入一个雇员编号,如果该雇员的职位是PRESIDENT


    给他的工资增加1000,如果该雇员的职位是MANAGER就给他的工资增加500,其它


    职位的雇员工资增加200


    create or replace procedure sp_pro6(spNo number) is

    v_job emp_copy.job%type;

    begin

    select job into v_job from emp_copy where empno=spNo;

    if v_job='PRESIDENT'
    then

    updateemp_copy set sal=sal+1000 where empno=spNo;

    elsif v_job='MANAGER'
    then

    updateemp_copy set sal=sal+500 where empno=spNo;

    else

    updateemp_copy set sal=sal+200 where empno=spNo;

    end if;

    end;

  • 相关阅读:
    woj 1574
    UESTC 594 我要长高 dp单调队列
    HDU 3401 Trade dp 单调队列优化
    HDU 2844 Coins 多重背包
    2-1
    1-2
    1-1
    12-1
    9-1
    14-8
  • 原文地址:https://www.cnblogs.com/lidabo/p/3088167.html
Copyright © 2011-2022 走看看