oracle存储过程中while循环语句报错,我的目的是从给出的第一日期循环到给出的第二个日期

我的目的是从给出的第一日期(年月固定,只需要日)循环到给出的第二个日期,并将循环过程中每一步的变量值显示出来。这个过程总是报错,建不上,大侠们帮着解释一下,因为对orac... 我的目的是从给出的第一日期(年月固定,只需要日)循环到给出的第二个日期,并将循环过程中每一步的变量值显示出来。这个过程总是报错,建不上,大侠们帮着解释一下,因为对oracle不了解,解释的清楚的会适当加分。谢谢!!
我写的过程如下:
create or replace procedure PR_DAY1_DAY2
(psI in int,psJ in int,psDay in varchar2)
as
begin
while psI<=psJ loop
if psI<10
select '0'||to_char(psI) into psDay from dual;
else
select to_char(psI) into psDay from dual;
end if;
dbms_output.put_line(psDay);
psI:=psI+1;
end loop;
end PR_DAY1_DAY2;
psDay 在后面会作update语句中的一个条件
展开
 我来答
badkano
2014-11-23 · 知道合伙人体育行家
badkano
知道合伙人体育行家
采纳数:144776 获赞数:885365
团长

向TA提问 私信TA
展开全部

不用解释了吧?

create or replace procedure PR_DAY1_DAY2
  (psI varchar2,
  psJ  varchar2)
as
  psDay varchar2(20);
begin
  psDay:=to_char(to_date(psi,'yyyymmdd'),'yyyymmdd');
while psDay<=psJ loop  
  dbms_output.put_line(psDay);
  psDay:=to_char(to_date(psDay,'yyyymmdd')+1,'yyyymmdd');
end loop;
end PR_DAY1_DAY2;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式