• oracle 编程


    into用法:

    DECLARE
    a NUMBER;
    b number;
    c number;
    BEGIN
    SELECT MAX(SAL),MIN(SAL),AVG(SAL) INTO A,B,C FROM EMP;
    DBMS_OUTPUT.PUT_LINE('最高工资:'|| a);
    DBMS_OUTPUT.PUT_LINE('最低工资:'|| b);
    DBMS_OUTPUT.PUT_LINE('平均工资:'|| c);
    END;

    if语句

    DECLARE
      score NUMBER := 90;
    BEGIN
      IF score < 60 THEN
        dbms_output.put_line ( '你有些落后了,还不快追上' );
      ELSIF score < 80 THEN
        dbms_output.put_line ( '成绩一般,要加把劲.' );
      ELSE

        dbms_output.put_line ( '你很优秀' )

    END IF;


    END;

     

    SELECT PRODUCT_ID,PRODUCT_TYPE_ID,
    CASE
    WHEN PRODUCT_TYPE_ID=1 THEN '图书类'
    WHEN PRODUCT_TYPE_ID=2 THEN '服装类'
    WHEN PRODUCT_TYPE_ID=3 THEN '日用类'
    WHEN PRODUCT_TYPE_ID=4 THEN '电器类'
    ELSE '其它分类'
    END CASE;
    from products

    DECLARE
      score NUMBER := 70;
    BEGIN
      CASE
        WHEN score > 80 THEN
          dbms_output.put_line ( '优秀' );
        WHEN score > 60 THEN
          dbms_output.put_line ( '一般' );
        ELSE
          dbms_output.put_line ( '待努力' );
      END CASE;
    END;

     

    DECLARE
      a integer := 10;
      total integer := 1;
    BEGIN
      LOOP
        total := total*a;
        a:=a-1;
        EXIT WHEN a=1;
      END LOOP;
    dbms_output.put_line('10*9*...*2*1='||total);
    END;

    例如:1.计算198-273之和
      

    DECLARE
      a integer;
      tot integer:=0;
    BEGIN
      FOR a IN 198..273 LOOP
        tot:=a+tot;
      END LOOP;
    dbms_output.put_line('198+199+...+273='||tot);
    END;

     2.又如打印九九乘法表

    DECLARE
      a INTEGER;
      b INTEGER;
      c INTEGER;
    BEGIN
      FOR a IN 1..9 LOOP
        FOR b IN 1..a LOOP
          c:=a*b;
          dbms_output.put(b||'*'||a||'='||c||' ');
        END LOOP;
        dbms_output.put_line('');
      END LOOP;
    END;

     

    goto结构又称跳转结构,可以在PLSQL块中设定一个标签,

    标签使用<<标签名>>来定义,然后使用goto 标签名;完成跳转。

    巧妙的使用goto语句能实现选择结构,也能实现循环结构。

    例如改写计算1-100之和的程序 

    DECLARE
      a INTEGER:=1;
      tot INTEGER:=0;
    BEGIN
      <<cal>>
      tot:=tot+a;
      a:=a+1;
      IF a<=100 THEN
        GOTO cal;
      END IF;
    dbms_output.put_line('1+2+...+100='||tot);
    END;

  • 相关阅读:
    设计模式-单件模式 实现
    设计模式-观察者模式 实现
    设计模式-策略模式 实现
    笔记- 设计模式:设计原则
    EventBus 发布/订阅 机制的 java 实现
    webService 客户端 以wsimport方式生成对应java文件
    【安装mysql】windows安装压缩版mysql5.7.15
    eclipse插件开发入门
    Java程序开发.邱加永2.1节
    Mysql常用表操作 | 单表查询
  • 原文地址:https://www.cnblogs.com/zxx7777777/p/11102093.html
Copyright © 2020-2023  润新知