oracle_loop循环

LOOP循环

/**
[<<label_name>>]
LOOP
 statement...
END LOOP [label_name]

【语法说明】
<<label_name>>:LOOP结构的标签,是可选项。
LOOP:LOOP循环开始标志。
statement:LOOP语句中循环执行的语句序列。
END LOOP:LOOP循环结束标志,可以添加LOOP结构的标签。
*/
--1.基本的LOOP语句
--实例:要求声明变量,每次循环都需要为变量增加数字1,并输出结果。当变量值大于3时,退出循环操作。
--利用EXIT...WHEN结束循环操作。
-- Created on 2017/6/29 by MENGTAO
declare
  -- Local variables here
  i number(8):=-3;
begin
  -- Test statements here
  <<fst_loop>>
  loop
    dbms_output.put_line(‘i= ‘||i);
    i:= i+1;
    exit fst_loop when i > 3;
  end loop;
  dbms_output.put_line(‘loop end!‘);
end;

  2. if ...exit..loop

--使用loop循环 输出[-3,3]之间的数字declare
  -- Local variables here
  i number(8):=-3;
begin
  -- Test statements here
  <<fst_loop>>
  loop
    dbms_output.put_line(‘i= ‘||i);
    i:=i+1;
    if  i > 3 then
      dbms_output.put_line(‘变量i值大于3,当前值为‘||i);
      exit fst_loop;
     end if;
  end loop fst_loop;
  dbms_output.put_line(‘loop end!‘);
end;

  3. cursor游标

--定义游标
declare
  cursor s_cur is
      select table_name from user_tables where upper(table_name) like upper(‘pms%‘);
   --定义一个游标变量c_r s_cur%rowtype ,该类型为游标s_cur中的一行数据类型
   c_r s_cur%ROWTYPE;
begin
    for  r in s_cur loop
      dbms_output.put_line(‘select * from ‘||r.table_name||‘;‘);
    end loop;
    dbms_output.put_line(‘--删除于2017-06-29‘);
    dbms_output.put_line(‘commit‘);
end;

  4. for...loop

/* FOR...LOOP语句可以遍历某个范围的整数,该范围被FOR和LOOP关键词封闭。
首次进入循环时,循环范围将被确定,并且以后不会再次计算。
每循环一次,循环指数将会自动增加1。

    FOR...LOOP语句的语法结构如下:

复制代码
[<<label_name>>]
FOR index_name IN
[ REVERSE ]
lower_bound .. upper_bound
LOOP
statement...
END LOOP [label_name];
【语法说明】
index_name:循环计数器,是一个变量,它可以得到当前的循环指数。
需要注意的是,不能为其手工赋值。
REVERSE:可选项,指定循环方式。默认的循环方式由下标(lower_bound)到上标(upper_bound)。
使用该选项则从上标界到下标界。
lower_bound:循环范围的下标界。
upper_bound:循环范围的上标界。
下标和上标之间的".."不能省略。*/

declare
    i number(8);
begin
    for i in -3..3 loop
      dbms_output.put_line(‘i= ‘||i);
    end loop;
    dbms_output.put_line(‘for loop end‘);
end ;

  5. while...loop

/*[<<label_name>>]
WHILE boolean_expression
LOOP
statement...
END LOOP [label_name];
【语法说明】
boolean_expression:布尔表达式。
statement:语句序列,当boolean_expression为TRUE时,该语句序列可获得执行权。
----------------------
 WHILE...LOOP结构和基本的LOOP语句不同,它本身可以结束LOOP循环。
 WHILE关键词后面需要有布尔表达式,当WHILE后面的布尔表达式为TRUE时,
 则循环体重的语句序列被执行1次,然后会重新判断WHILE后面的表达式是否为TRUE,
 只有当WHILE后的布尔表达式为FALSE时,才结束整个LOOP循环。
*/

declare
  i number(8) := -3;
begin
  <<while_loop>>
  while (i<4)
    loop
      dbms_output.put_line(‘i= ‘||i);
      i:=i+1;
    end loop while_loop;
    dbms_output.put_line(‘while loop end!‘);
end;

  

时间: 2024-11-26 03:32:17

oracle_loop循环的相关文章

微信小程序学习总结(2)------- 之for循环,绑定点击事件

最近公司有小程序的项目,本人有幸参与其中,一个项目做下来感觉受益匪浅,与大家做下分享,欢迎沟通交流互相学习. 先说一下此次项目本人体会较深的几个关键点:微信地图.用户静默授权.用户弹窗授权.微信充值等等. 言归正传,今天分享我遇到的关于wx:for循环绑定数据的一个tips:  1. 想必大家的都知道wx:for,如下就不用我啰嗦了: <view class="myNew" wx:for="{{list}}">{{item.title}}<view

条件、循环、函数定义、字符串操作练习

注意标准库的两种导入与使用方式,建议大家采用<库名>.<函数名>的方式. 对前面的代码进行优化,用for,while,if,def实现: 用循环画五角星 1 import turtle 2 3 turtle.fillcolor("red") 4 turtle.begin_fill() 5 for i in range(5): 6 turtle.forward(100) 7 turtle.right(144) 8 turtle.end_fill() 用循环画同心圆

C语言for循环的一些注意细节

在使用for循环接收处理数组的时候,有时候要回到数组的首位置.以前没有注意这个问题,以为循环变量置0就可以,实际不是这样的.先来看一下for循环的反汇编代码,如下: Unit1.cpp.595: for(int i=0;i<3;i++)   00402938 33C0             xor eax,eax   0040293A 8945F4           mov [ebp-0x0c],eax   Unit1.cpp.597: i = 0;   0040293D 33D2     

python基础之条件循环语句

前两篇说的是数据类型和数据运算,本篇来讲讲条件语句和循环语句. 0x00. 条件语句 条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: Python interprets non-zero values as True. None and 0 are interpreted as False. Python 判断非0的值为 True, 而None和0被认为是 False.注意这里的True和False首字母大写,Py

JS循环

JS循环基础知识 [循环结构的执行步骤] 1,声明循环变量: 2,判断循环条件: 3,执行循环体操作: 4,更新循环变量: 然后,循环执行2-4,直到条件不成立时,跳出循环: while循环()中的表达式,运算结果可以是各种类型.但是最终都会转化为真假,转换规则同if结构: ①boolean:true为真,flase为假: ②string:空字符串为假,所有非空字符串为真: ③number:0为假,一切非0数字为真: ④null,undefined,NaN全为假: ⑤object:全为真: wh

shell脚本for循环

Shell循环:for 循环次数是固定的 ===================== Shell: for  变量名  [in  取值列表] do 循环体 done C语言: for((初值;条件;步长)) do 循环体 done ===================== Shell循环:while  until 循环次数不一定是固定的 可以固定 可以不固定 while语句: while  条件测试 do 循环体 done 功能:当条件测试成立(条件测试为真),执行循环体. =========

WordPress主循环(The Loop)函数have_posts(),the_post()详解

WordPress中调用文章标题是the_title();调用文章内容时用到the_content();调用文章的作者时用到the_author();等等这些函数,都需要在主循环中使用,下面就介绍一下如何用have_posts()和the_post()开始Wordpress文章中循环,并说明如何结束循环. 语法 1 <?php if (have_posts()) :  while (have_posts()) : the_post(); ?> 2 当找到文章时返回此语句 3 <?php 

python学习笔记二:if语句及循环语句,断点,模块,pyc

if语句 注意:语句块中的内容要强制缩进,否则出错.IndentationError,缩进错误 所有代码,如果是顶级的,必须顶格写,前面不能有空格 if - : - elif - : - else: - while语句 while -: - else: - for语句 for i in range(10)--i默认0,步长默认1,最大为9 for i in range (0,2,10)--从0开始,步长为2,最大为8 for  i   in range(-): - else: - break--

while与do while 区别 for循环的简介及break和continue的区别

do while 循环和while循环的区别   1.do while循环是先执行循环体,然后判断循环条件,如果为真,则执行下一步循环,否则终止循环:    while循环是先判断循环条件,如果条件为真则执行循环体:   2.do while循环条件后面必须有一个分号,这个分号表明循环结束. 1.for循环 for循环是更加简洁的循环语句,大部分情况下,for循环可以代替while循环.do-while循环. for循环的格式为: for( 初始语句  ; 执行条件  ; 增量 ) { 循环体