Thread: for statement, adding a STEP clause?
Hi, there is a chance to add a STEP clause to the FOR statement in plpgsql? something like FOR i IN 1..100 STEP 2 LOOP END LOOP the STEP value must be a positive value because of the effect of the REVERSE clause... i think it's just a matter of fixing gram.y, plpgsql.h (to add another PLpgSQL_expr to the stmt_fori) and pl_exec.c (the way the internal variable is incremented here makes me think that i wasn't the first one with this idea) i'm missing something? is "STEP" a good name for this? i will make a try tomorrow any ideas and suggestions are welcome... -- regards, Jaime Casanova "What they (MySQL) lose in usability, they gain back in benchmarks, and that's all that matters: getting the wrong answer really fast." Randal L. Schwartz
"Jaime Casanova" <systemguards@gmail.com> writes: > there is a chance to add a STEP clause to the FOR statement in plpgsql? This is not free: it'd require making STEP a reserved word (at least within plpgsql) which is contrary to spec. I think you need to make a pretty good case why the value of the feature outweighs breaking applications that have perfectly-legally used "step" as an identifier. regards, tom lane
Tom Lane wrote: >"Jaime Casanova" <systemguards@gmail.com> writes: > > >>there is a chance to add a STEP clause to the FOR statement in plpgsql? >> >> > >This is not free: it'd require making STEP a reserved word (at least >within plpgsql) which is contrary to spec. I think you need to make >a pretty good case why the value of the feature outweighs breaking >applications that have perfectly-legally used "step" as an identifier. > > This isn't available in PL/SQL, is it? That doesn't mean we shouldn't do it, of course, but it might lessen any perceivedimperative. Maybe using BY instad of STEP as the keyword would make it easier, since its occurrence in SQL makes it less likely to beused as a variable. cheers andrew