zoukankan      html  css  js  c++  java
  • PLSQL --流程控制

    流程控制

    1.条件分支

    语法:

     1 -- Created on 2018/8/23 by MENGMENG.CHEN 
     2 declare 
     3   -- Local variables here
     4   i integer;
     5 begin
     6   -- Test statements here
     7   IF 条件1 THEN 执行1
     8     ELSIF 条件2 THEN 执行2
     9       ELSE 执行3
    10       END IF;
    11 end;

    示例:查询emp表中记录是否超过20条,10-20之间,或者10条以下。

     1 -- Created on 2018/8/23 by MENGMENG.CHEN 
     2 --查询emp表中记录是否超过20条,10-20之间,或者10条以下。 
     3 declare 
     4   -- Local variables here
     5   v_count NUMBER;
     6 begin
     7   -- Test statements here
     8   SELECT COUNT(1) INTO v_count FROM emp ;
     9   IF (v_count>20) THEN 
    10     dbms_output.put_line('表中记录20以上:'||v_count||'');
    11     ELSIF (v_count>10) THEN 
    12       dbms_output.put_line('表中记录10-20:'||v_count||'');
    13       ELSE 
    14         dbms_output.put_line('表中记录10以下:'||v_count||'');
    15       END IF;
    16 end;

    运行结果:

    2.循环

      loop

      语法:

     1 -- Created on 2018/8/23 by MENGMENG.CHEN 
     2 declare 
     3   -- Local variables here
     4   i integer;
     5 begin
     6   -- Test statements here
     7   LOOP 
     8     EXIT WHEN 遇到循环条件
     9     END LOOP;
    10 end;

    示例:打印数字1-10

     1 -- Created on 2018/8/23 by MENGMENG.CHEN 
     2 --打印数字1-10
     3 declare 
     4   -- Local variables here
     5   --声明循环变量
     6   v_num NUMBER;
     7 BEGIN
     8   --赋值
     9   v_num:=1;
    10   -- Test statements here
    11   LOOP 
    12     EXIT WHEN v_num>10;
    13     dbms_output.put_line(v_num);
    14     --循环变量的自增长
    15     v_num := v_num + 1;
    16     END LOOP;
    17 end;

    运行结果:

  • 相关阅读:
    UVALive2678子序列
    UVA11549计算机谜题
    UVA11520填充正方形
    LA3635派
    UVALive3971组装电脑
    记录未完成题目
    SPOJ 6219 Edit distance字符串间编辑距离
    ACM组队安排-——杭电校赛(递推)
    逆袭指数-——杭电校赛(dfs)
    油菜花王国——杭电校赛(并查集)
  • 原文地址:https://www.cnblogs.com/ChenMM/p/9525113.html
Copyright © 2011-2022 走看看