首页 > 数据库技术 > 详细

PLSQL --流程控制

时间:2018-08-23 18:07:57      阅读:153      评论:0      收藏:0      [点我收藏+]

流程控制

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;

 

运行结果:

技术分享图片

 

PLSQL --流程控制

原文:https://www.cnblogs.com/ChenMM/p/9525113.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!