Обсуждение: Suggested patch to plpgsql docs (7.4beta)
Addition of one paragraph to the end of section 39.7.3.4 "FOR (integer
variant)"
Note that this is basically a WHILE loop, so if the lower bound is larger than
the upper bound the loop never executes it's contents:
FOR i IN 10..1 LOOP
RAISE NOTICE ''I do not raise a notice %'',i;
END LOOP;
I wasn't sure and had to check, so I assume others might find this useful too.
--
Richard Huxton
Archonet Ltd
Richard Huxton writes: > Addition of one paragraph to the end of section 39.7.3.4 "FOR (integer > variant)" > > Note that this is basically a WHILE loop, so if the lower bound is larger than > the upper bound the loop never executes it's contents: I've added a note to this effect. Thanks. -- Peter Eisentraut peter_e@gmx.net
Richard Huxton wrote: > Addition of one paragraph to the end of section 39.7.3.4 "FOR (integer > variant)" > > Note that this is basically a WHILE loop, so if the lower bound is larger than > the upper bound the loop never executes it's contents: > FOR i IN 10..1 LOOP > RAISE NOTICE ''I do not raise a notice %'',i; > END LOOP; > > I wasn't sure and had to check, so I assume others might find this useful too. I figured everyone would assume that. I know of no language that will execute a loop listed as 10 ... 1. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073
On Thu, 4 Sep 2003 09:11 am, Bruce Momjian wrote:
> Richard Huxton wrote:
> > Addition of one paragraph to the end of section 39.7.3.4 "FOR (integer
> > variant)"
> >
> > Note that this is basically a WHILE loop, so if the lower bound is larger
> > than the upper bound the loop never executes it's contents:
> > FOR i IN 10..1 LOOP
> > RAISE NOTICE ''I do not raise a notice %'',i;
> > END LOOP;
> >
> > I wasn't sure and had to check, so I assume others might find this useful
> > too.
>
> I figured everyone would assume that. I know of no language that will
> execute a loop listed as 10 ... 1.
Basic on my first computer suppported it, though the syntax was
FOR $i in 10 TO 1 STEP -1
PRINT $i
NEXT
I think it is worth stating explicitly. The apostrophe in "it's" is incorrect
though.
Regards, Philip Yarra.
Bruce Momjian <pgman@candle.pha.pa.us> writes:
> I figured everyone would assume that. I know of no language that will
> execute a loop listed as 10 ... 1.
Fortran N for N < something-or-other. I think Richard is betraying
his age ;-)
regards, tom lane
On Thursday 04 September 2003 04:32, Tom Lane wrote: > Bruce Momjian <pgman@candle.pha.pa.us> writes: > > I figured everyone would assume that. I know of no language that will > > execute a loop listed as 10 ... 1. I did assume that, then my paranoia kicked in suggesting it might be constructing a list of values and stepping through them. The only reason I could think it should behave like a while loop is that, well, all the others do. > Fortran N for N < something-or-other. I think Richard is betraying > his age ;-) And how DARE you Tom - I clearly meant DotJavaWebSysNet or something trendy like that and not some crufty version of BASIC from my 6502 days....;-) -- Richard Huxton Archonet Ltd