zoukankan      html  css  js  c++  java
  • Oracle基础 PL-SQL编程基础(2) 分支结构

    一、分支结构

    1、if语句

    语法:

    IF <布尔表达式> THEN

      PL/SQL和SQL语句

    END IF;

    示例:

    DECLARE 
      v_count NUMBER := &n;
    BEGIN
      IF v_count > 0 THEN
            DBMS_OUTPUT.put_line('正数');
      END IF;
    END;

    判断是否为正整数!

    2、if...else...

    语法

    IF <布尔表达式> THEN

      PL/SQL 和 SQL 语句

    ELSE

      其他语句

    END IF;

    示例:

    DECLARE 
        v_count NUMBER := &n;
    BEGIN
        IF v_count > 0 THEN
            DBMS_OUTPUT.put_line('正数');
        ELSE
            DBMS_OUTPUT.put_line('负数');
        END IF;
    END;            

    判断是否为正数或者负数!

    3、多重if...else...结构

    语法:

    IF <布尔表达式> THEN

      PL/SQL 和 SQL 语句

    ELSIF <其他布尔表达式> THEN

      PL/SQL 和 SQL 语句

    ELSIF <其他布尔表达式> THEN

      PL/SQL 和 SQL 语句

    ELSE

      PL/SQL 和 SQL 语句

    END IF;

    示例:

    DECLARE 
      v_count NUMBER := &n;
    BEGIN
      IF v_count > 0 THEN
            DBMS_OUTPUT.put_line('正数');
      ELSIF v_count < 0 THEN
            DBMS_OUTPUT.put_line('负数');
      ELSE
            DBMS_OUTPUT.put_line('');
      END IF;
    END;

    4、CASE语句语法:

    格式一:

    CASE 条件表达式

      WHEN 条件表达式结果1 THEN

        语句段1

      WHEN 条件表达式结果2 THEN

        语句段

      ......

      WHEN 条件表达式结果n THEN

        语句段n

      [ELSE 语句段]

    END CASE;

    示例:根据输入1-7显示星期

    DECLARE
      v_week NUMBER := &S;
    BEGIN
      CASE v_week
        WHEN 1 THEN
          DBMS_OUTPUT.PUT_LINE('星期一');
        WHEN 2 THEN
          DBMS_OUTPUT.PUT_LINE('星期二');
        WHEN 3 THEN
          DBMS_OUTPUT.PUT_LINE('星期三');
        WHEN 4 THEN
          DBMS_OUTPUT.PUT_LINE('星期四');
        WHEN 5 THEN
          DBMS_OUTPUT.PUT_LINE('星期五');
        WHEN 6 THEN
          DBMS_OUTPUT.PUT_LINE('星期六');
        WHEN 7 THEN
          DBMS_OUTPUT.PUT_LINE('星期日');
        ELSE
          DBMS_OUTPUT.PUT_LINE('输入错误');
      END CASE;
    END;

    注意: 一般用于等值判断的情况。

    格式二:

    CASE 

      WHEN 条件表达式1 THEN

        语句段1

      WHEN 条件表达式2 THEN

        语句段

      ......

      WHEN 条件表达式n THEN

        语句段n

      [ELSE 语句段]

    END CASE;

    示例:根据分数输出A,B,C,D,E

    DECLARE
      V_SCORE NUMBER := &N;
    BEGIN
      CASE
        WHEN V_SCORE >= 90 THEN
          DBMS_OUTPUT.PUT_LINE('A');
        WHEN V_SCORE >= 80 THEN
          DBMS_OUTPUT.PUT_LINE('B');
        WHEN V_SCORE >= 70 THEN
          DBMS_OUTPUT.PUT_LINE('C');
        WHEN V_SCORE >= 60 THEN
          DBMS_OUTPUT.PUT_LINE('D');
        ELSE
          DBMS_OUTPUT.PUT_LINE('E');
      END CASE;
    END;

     注意:一般用于区间判断的情况。

  • 相关阅读:
    DLinq[新特性]
    破解 iPod Touch[转]
    iPod Touch Online
    谈到Model View Presenter模式之后的随笔[讨论版]
    各家银行买"基金"如何省钱
    WF随笔系列之二 架构、编译、序列化
    JavaScript AppendChild 引发的思考
    IEquatable接口
    DLinq查询
    基金小窍门:如何判断基金的赚与赔
  • 原文地址:https://www.cnblogs.com/zhengcheng/p/4170219.html
Copyright © 2011-2022 走看看