On 3 February 2011 13:32, Thom Brown <thom@xxxxxxxxx> wrote: > Actually, further testing indicates this causes other problems: > > postgres=# SELECT x FROM generate_series(1, 9,-1) AS a(x); > x > --- > 1 > (1 row) > > Should return no rows. > > postgres=# SELECT x FROM generate_series(1, 9,3) AS a(x); > x > ---- > 1 > 4 > 7 > 10 > (4 rows) > > Should return 3 rows. Still messy code, but the attached patch does the job now: postgres=# SELECT x FROM generate_series(2147483643::int4,2147483647::int4) AS a(x); x ------------ 2147483643 2147483644 2147483645 2147483646 2147483647 (5 rows) postgres=# SELECT x FROM generate_series(2147483642::int4,2147483647::int4, 2) AS a(x); x ------------ 2147483642 2147483644 2147483646 (3 rows) postgres=# SELECT x FROM generate_series(2147483643::int4,2147483647::int4, 6) AS a(x); x ------------ 2147483643 (1 row) postgres=# SELECT x FROM generate_series((-2147483643)::int4, (-2147483648)::int4, -1) AS a(x); x ------------- -2147483643 -2147483644 -2147483645 -2147483646 -2147483647 -2147483648 (6 rows) postgres=# SELECT x FROM generate_series(1, 9,-1) AS a(x); x --- (0 rows) postgres=# SELECT x FROM generate_series(1, 9,3) AS a(x); x --- 1 4 7 (3 rows) -- Thom Brown Twitter: @darkixion IRC (freenode): dark_ixion Registered Linux user: #516935
Attachment:
generate_series_fix.v3.patch
Description: Binary data
-- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general