FOR integer loop bug?
От | Adrian Klaver |
---|---|
Тема | FOR integer loop bug? |
Дата | |
Msg-id | c276938c-50f7-99db-926f-74dbddd83d27@aklaver.com обсуждение исходный текст |
Ответы |
Re: FOR integer loop bug?
|
Список | pgsql-general |
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@aklaver.com
В списке pgsql-general по дате отправления: