17,089
社区成员
发帖
与我相关
我的任务
分享
create or replace PROCEDURE proc_test
(v_id in varchar2,
a in varchar2,
b in varchar2
)
is
v_n varchar2(10);
begin
for i in a..b loop
select n into v_n from user where m=i and id=v_id;
if v_n=0 then
update user set k is null where m=i and id=v_id;
elseif v_n=2 then
update user set k=nvl(lag(n)over(order by m),m) where m=i and id=v_id;
end if;
commit;
end loop;
end proc_test;
create or replace PROCEDURE proc_test
(v_id in varchar2,
a in varchar2,
b in varchar2
)
is
v_n varchar2(10);
begin
for i in a..b loop
select n into v_n from user where m=i and id=v_id;
if v_n=0 then
update user set k is null where m=i and id=v_id;
elseif v_n=2 then
update user set k=nvl(lag(n)over(order by m),m) where m=i and id=v_id;
end if;
commit;
end loop;
end proc_test;