Search Postgresql Archives

FOR integer loop bug?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Postgres 14.2

In commenting on a SO question I came across the below.

Given:

CREATE OR REPLACE FUNCTION public.for_loop_test()
 RETURNS void
 LANGUAGE plpgsql
AS $function$
BEGIN
    FOR i IN 1..10 LOOP
        RAISE NOTICE '%', i;
    END LOOP;
END;

$function$
;

select for_loop_test();
NOTICE:  1
NOTICE:  2
NOTICE:  3
NOTICE:  4
NOTICE:  5
NOTICE:  6
NOTICE:  7
NOTICE:  8
NOTICE:  9
NOTICE:  10

Then, note 1...10:

CREATE OR REPLACE FUNCTION public.for_loop_test()
 RETURNS void
 LANGUAGE plpgsql
AS $function$
BEGIN
    FOR i IN 1...10 LOOP
        RAISE NOTICE '%', i;
    END LOOP;
END;

$function$

select for_loop_test();
 for_loop_test
---------------

If you do:

FOR i IN 1....10 LOOP

or

FOR i IN 1.10 LOOP

You get:

ERROR:  syntax error at or near ".."
LINE 6:     FOR i IN 1....10 LOOP

ERROR:  syntax error at or near "1.10"
LINE 6:     FOR i IN 1.10 LOOP

respectively.

Why is the three period form allowed through and why does it produce no result?

--
Adrian Klaver
adrian.klaver@xxxxxxxxxxx





[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux