oracle的loop等循环语句的几个用法小例子[转]
- --loop循环用法 (输出1到10)
- declare v_num number(2) := 0;
- begin
- loop
- v_num := v_num + 1;
- exit when v_num > 10;
- --上面退出循环也可以用下面3行
- /* if(v_num > 9) then
- exit;
- end if;*/
- dbms_output.put_line(v_num);
- end loop;
- end;
- --while loop循环用法 (输出1到10)
- declare v_num number(2) := 0;
- begin
- while v_num < 10 loop
- v_num := v_num + 1;
- dbms_output.put_line(v_num);
- end loop;
- end;
- --for loop循环用法1 (输出1到10)
- declare v_num number(2) := 99;
- begin
- for v_n in 1 .. v_num loop
- exit when v_n > 10;
- dbms_output.put_line(v_n);
- end loop;
- end;
- --for loop循环用法2 (输出某个表的序号、列数据)
- begin
- for v_n in(select amount,rownum from tmp) loop
- dbms_output.put_line(v_n.rownum || ' , ' || v_n.amount);
- end loop;
- end;
- ---个循环打印某个月日历例子
- declare v_days number(2);
- v_firstday number(2);
- v_result varchar2(4000);
- v_d varchar(100);
- v_month date;
- begin
- v_month := to_date('20170301','yyyymmdd');
- v_result := to_char(v_month,'yyyy') || '年' || to_char(v_month,'mm') || '月' || chr(10) || '日 一 二 三 四 五 六' || chr(10);
- select to_char(last_day(v_month), 'dd') into v_days from dual;--当月多少天
- select to_char(trunc(v_month, 'mm'),'d') into v_firstday from dual;--当月第1天是星期几:1-7
- --1号所在星期几的之前每一天补3个空格
- for v_week in 1 .. v_firstday - 1 loop
- exit when v_firstday < 2;
- v_result := v_result || ' ';
- end loop;
- for v_date in 1 .. v_days loop
- v_d := v_date;
- if(length(v_date) = 1) then
- v_d := ' '||v_date ;
- end if;
- v_result := v_result || v_d || ' ';
- if(mod(v_date + v_firstday, 7) = 1) then
- v_result := v_result || ' ' || chr(10);
- end if;
- end loop;
- dbms_output.put_line(v_result);
- end;
- /*
- 运行结果:
- 2017年03月
- 日 一 二 三 四 五 六
- 1 2 3 4
- 5 6 7 8 9 10 11
- 12 13 14 15 16 17 18
- 19 20 21 22 23 24 25
- 26 27 28 29 30 31
- */
原文地址: http://blog.csdn.net/gdjlc/article/details/64125097
oracle的loop等循环语句的几个用法小例子[转]的更多相关文章
- oracle的loop等循环语句的几个用法小例子
--loop循环用法 (输出1到10) declare v_num number(2) := 0; begin loop v_num := v_num + 1; exit when v_num > ...
- oracle 关于动态执行语句 execute immediate 的用法
当在开发的应用场景中 数据库处理复杂业务逻辑里用到 SQL 语句拼接 可以用 execute immediate 来执行语 举个例子 insert into tb_temp_public( ...
- sql 语句左连接右连接小例子
A表(a1,b1,c1) B表(a2,b2) a1 b1 c1 a2 b2 01 数学 95 01 张三 02 语文 90 02 李四 03 英语 80 04 王五 select A.*,B.* fr ...
- oracle的loop
oracle的loop等循环语句的几个用法小例子 --loop循环用法 (输出1到10) ) :; begin loop v_num :; ; --上面退出循环也可以用下面3行 /* if(v_num ...
- Oracle的分页查询语句优化
Oracle的分页查询语句基本上可以按照本文给出的格式来进行套用. (一) 分页查询格式: SELECT * FROM ( SELECT A.*, ROWNUM RN FROM (SELECT ...
- oracle去掉重复记录语句
oracle去掉重复记录语句 比如现在有一人员表 (表名:peosons) 若想将姓名.身份证号.住址这三个字段完全相同的记录查询出来 select p1.* from persons p1 ...
- oracle过程中动态语句实现
oracle过程中动态语句实现 一般的PL/SQL程序设计中,在DML和事务控制的语句中可以直接使用SQL,但是DDL语句及系统控制语句却不能在PL/SQL中直接使用,要想实现在PL/SQL中使用DD ...
- 说说oracle分页的sql语句
说说oracle分页的sql语句,分排序和不排序两种. 当结果集不需要进行排序时,每页显示条数为:rowPerPage,当前页数为:currentPage. 1. 相对来说,这种查询速度会快一些,因为 ...
- oracle 多条执行语句同时执行
oracle 多条执行语句同时执行:begin 语名一;语句二; end; 注意 如果写在C#里千万不要用@的方法然后语句里有回车 例: string strSql = "begin upd ...
随机推荐
- MySQL连接数超过限制的解决方法
最近网站出现 User 数据库名称 has already more than 'max_user_connections' active connections 的报错,网站瘫痪.有必要研究下这个问 ...
- JS 中document.URL 和 windows.location.href 的区别
实际上,document 和 windows 这两个对象的区别已经包含了这个问题的答案. document 表示的是一个文档对象,windows 表示一个窗口对象. 一个窗口下面可以有很多的docu ...
- 学习笔记之gethostbyaddr函数
刚才学了gethostbyname函数,这个gethostbyaddr函数的作用是通过一个IPv4的地址来获取主机信息,并放在hostent结构体中. #include <netdb.h> ...
- 对Android的恶意吐槽(勿看,有毒)
CSDN博客:http://blog.csdn.net/niu_gao 我觉得android系统中有一个特恶心人的大败笔.就是这个大败笔造成了android系统的卡卡卡不停. 这个大败笔就是对acti ...
- Maven 在eclipse中如何配置
大部分码农们都很熟悉Eclipse,用eclipse开发项目,Maven是解决依赖库的一个非常好用的java工具,可以与Eclipse集成,方便地管理web,java项目等等:但是很多初学者都不知道怎 ...
- ajaxfileupload 半成品遇到的问题,不走success 走error的问题
大部分都是datatype 为 json的时候遇到的 1.遇到json被加pre标签 去掉 2.遇到json被加audio 标签 去掉 3.遇到json转换错误,换方式转 改后的代码如下 , 有注 ...
- quartz 实现调度任务 SchedulerManager
package cn.com.do1.component.common.util; import org.quartz.*; import org.quartz.impl.StdSchedulerFa ...
- org.eclipse.jdt.internal.compiler包下的类找不到
到maven库上下载jar包:org.eclipse.jdt.core-3.13.jar <!-- https://mvnrepository.com/artifact/org.eclipse. ...
- 纯css3实现的幽灵按钮导航
之前为大家介绍了好几款导航菜单,今天再给大家带来一款css3实现的幽灵按钮式的导航菜单.导航界面非常好看.右侧是一个css3实现的动画消息图标.效果图如下: 在线预览 源码下载 实现代码: htm ...
- 关于最新的Vuforia-unity3d-samples2-8-13
今天用了一下最新的Vuforia for unity3d的样例2-813版本号.导入我的unity3d之后.发现ARCamera的检视面板下非常多熟悉的元素都不见了,根本没法改动标志,如图所看到的. ...