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;

  • 相关阅读:
    对TCP/IP协议的一些看法(12):UDP协议
    对TCP/IP协议的一些看法(11):窗口
    对TCP/IP协议的一些看法(10):TCP协议(2)
    对TCP/IP协议的一些看法(9):TCP协议(1)
    对TCP/IP协议的一些看法(8):DNS协议
    对TCP/IP协议的一些看法(7):传输层
    [BFS]翻币问题
    [BFS]骑士旅行
    [BFS]电子老鼠闯迷宫
    [BFS]P1434 [SHOI2002]滑雪
  • 原文地址:https://www.cnblogs.com/lidabo/p/3088167.html
Copyright © 2011-2022 走看看