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语句中的一个条件 展开
我写的过程如下:
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语句中的一个条件 展开
1个回答
展开全部
不用解释了吧?
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;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询