PL/SQL循环语句:WHILE与FOR的使用技巧

在这里插入图片描述

1. WHILE语句
  • 基本介绍
    WHILE语句的功能是根据条件判断的结果来循环执行一部分代码。只要条件成立,代码就会不断执行,直到条件不再成立。WHILE语句的格式为:

    WHILE 条件
    LOOP
        循环体
    END LOOP;
    
  • 工作原理
    在执行WHILE循环时,首先判断条件是否成立。如果成立,则执行循环体,然后再判断条件是否继续成立,直到条件不成立时,循环结束。

  • 举例
    计算1+2+3+…+100的值。只要i小于等于100,循环就会继续执行,并将当前值累加到total中。

    SET SERVEROUTPUT ON;
    DECLARE
        i INTEGER := 1;
        total INTEGER := 0;
    BEGIN
        WHILE i <= 100
        LOOP
            total := total + i;
            i := i + 1;
        END LOOP;
        dbms_output.put_line(total);
    END;
    /
    
    • 解释
      在这个例子中,WHILE语句用来计算1到100之间所有整数的和。i从1开始,每次循环都将i的值加到total中,并且i递增1。循环在i超过100时结束。最后,total的值为5050。
2. FOR语句
  • 基本介绍
    FOR语句的功能是指定一个起始值和一个终止值,在这个范围内反复执行一段代码。循环变量从起始值开始,每执行一次循环,变量自动加1或减1,直到与终止值相等时,循环结束。FOR语句的格式为:

    FOR 循环变量 IN [REVERSE] 起始值..终止值 LOOP
        循环体
    END LOOP;
    
  • 工作原理
    在FOR语句中,循环变量从起始值开始到终止值之间的整数构成一个集合。在执行FOR语句时,循环变量会依次取集合中的每一个元素,并执行一次循环体。

  • 举例
    还是使用前面的例子,求1+2+3+…+100的值,这次通过FOR语句来实现。

    SET SERVEROUTPUT ON;
    DECLARE
        total INTEGER := 0;
    BEGIN
        FOR i IN 1..100 LOOP
            total := total + i;
        END LOOP;
        dbms_output.put_line(total);
    END;
    /
    
    • 解释
      在这个例子中,FOR语句使代码更加简洁。循环变量i从1开始,到100结束,每次循环都将i的值加到total中。循环结束后,total的值为5050,与WHILE语句的结果一致。

总结:

  • WHILE语句适合在循环条件较为复杂且不确定循环次数的情况下使用。
  • FOR语句更适合在循环次数已知的情况下使用,并且语法相对简洁。

非常感谢您读到这里!如果您觉得这篇文章对您有帮助,可以关注一下博主。关注后,您将第一时间获得最新的AI、云计算、运维(Linux、数据库,容器等)技术,以及更多实用的技能干货。


无论你是AI新手还是AI专家,学习最前沿的AI技术,AI创富俱乐部你值得拥有!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

周同学的技术栈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值