Oracle PL/SQL中的For In-loop
在PL/SQL中,我可以使用FOR-In循环从1到20进行迭代,如下所示:Oracle PL/SQL中的For In-loop,sql,oracle,for-loop,plsql,for-in-loop,Sql,Oracle,For Loop,Plsql,For In Loop,在PL/SQL中,我可以使用FOR-In循环从1到20进行迭代,如下所示: FOR counter IN 1..20 我想知道的是,是否有一个简单的改变,我可以做这将允许我通过循环迭代,只有偶数值之间的1-20?i、 计数器将显示2、4、6。。。20对戈登的评论进行补充 这是语法,因此没有内置方式 您可以在FOR循环语句中模拟STEP子句 除了戈登的评论之外 这是语法,因此没有内置方式 您可以在FOR循环语句中模拟STEP子句 没有内置的方式。你需要乘以2。没有内置的方式。你需要乘以2。 [
FOR counter IN 1..20
我想知道的是,是否有一个简单的改变,我可以做这将允许我通过循环迭代,只有偶数值之间的1-20?i、 计数器将显示2、4、6。。。20对戈登的评论进行补充 这是语法,因此没有内置方式 您可以在FOR循环语句中模拟STEP子句
除了戈登的评论之外 这是语法,因此没有内置方式 您可以在FOR循环语句中模拟STEP子句
没有内置的方式。你需要乘以2。没有内置的方式。你需要乘以2。
[ label ] FOR index IN [ REVERSE ] lower_bound..upper_bound LOOP
statements
END LOOP [ label ];
DECLARE
step PLS_INTEGER := 5;
BEGIN
FOR i IN 1..3 LOOP
DBMS_OUTPUT.PUT_LINE (i*step);
END LOOP;
END;
SET SERVEROUTPUT ON;--default buffer size is 1000 000
declare
idx number:=0;
step number:=10000;
begin
DBMS_OUTPUT.ENABLE(Null);-- unlimited output buffer
for i in 1..3 loop
DBMS_OUTPUT.PUT_LINE('idex: from [' ||idx|| ' ] to [' || (idx+step) || ']');
--..... you loop logic
select t.id, row_number() over(order by t.id) rw
from t
where rw >= idx and rw < (idx+step)
idx:= idx+step; --increment step.
end loop;
end;