DMSQL常用的几种循环语句

循环语句在日常运维中经常会用到,最常见的三种就是:基本循环、WHILE循环和FOR循环。

1.基本循环

基本循环至少执行一次循环体内的语句,格式以LOOP开始,以END LOOP结束语法如下:

--基本循环

LOOP 

    statement1;

    ...

    EXIT [WHEN condition];

END LOOP;

PS编写基本循环时,一定要包含EXIT语句,否则程序会陷入死循环。

使用基本循环时,需要先定义循环控制变量,并且在循环体内修改变量的值。

例如向测试表中插入5条数据:

DECLARE 

    i INT :=1;

BEGIN 

     LOOP 

        INSERT INTO AA.TEST  VALUES(i);  

        EXIT WHEN i=5;

        i:=i+1;

     END LOOP;

END;  

COMMIT; 

2.WHILE循环

WHILE循环只有条件为TRUE时,才会执行循环体内的语句格式以WHILE....LOOP开始,以END  LOOP 结束,语法如下:

--WHILE循环

WHILE condition LOOP

   statement1;

   statement2;

   ...

END LOOP; 

PS使用WHILE循环时,需要先定义循环控制变量,并且在循环体内修改变量的值。

例如向测试表中插入5条数据:

DECLARE 

    i INT :=1;

BEGIN 

     WHILE i<=5 LOOP

        INSERT INTO AA.TEST VALUES(i);    

        i:=i+1;

      END LOOP;

END; 

COMMIT; 

3.FOR循环

FOR循环时会隐含定义循环控制变量格式FOR....LOOP开始,以END  LOOP 结束,语法如下:

--FOR循环

FOR counter in [REVERSE] low_bound .. high_bound 

LOOP

    statement1;

    statement2;

    ...

END LOOP;

PS:counter是循环控制变量,隐含定义

low_bound和high_bound分别对应于循环控制变量的界值和界值。

默认情况下,每次循环控制变量会从下界往上界递增1;如果指定REVERSE关键字每次循环控制变量会从上界往下界递减1

例如向测试表中插入1,2,3,4,5数据:

BEGIN

    FOR i IN  1 .. 5 

    LOOP

        INSERT INTO AA.TEST VALUES(i);    

    END LOOP;

END; 

COMMIT; 

例如向测试表中插入5,4,3,2,1数据:

BEGIN

    FOR i IN REVERSE 1 .. 5 

    LOOP

        INSERT INTO AA.TEST VALUES(i);    

    END LOOP;

END; 

COMMIT; 

仅供参考,如有不足,欢迎斧正。

更多资讯请上达梦技术社区了解: https://eco.dameng.com/

  • 20
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值