2010/3/29 Andrus <kobrule...@hot.ee>:
> This returns 5 rows:
>
> CREATE OR REPLACE FUNCTION unnest(anyarray)
> RETURNS SETOF anyelement as $$
>  SELECT $1[i] FROM generate_series(1,4) g(i) <<--- 4 is constant !!!!!!!!!!!!
> $$ LANGUAGE sql;
>
> select unnest(string_to_array('23,2,3,4,5',','));
>
> simply changing name returns 4 rows:

sure .. original buggy function is here still.

Pavel

>
> CREATE OR REPLACE FUNCTION unnest21(anyarray)
> RETURNS SETOF anyelement as $$
>  SELECT $1[i] FROM generate_series(1,4) g(i)
> $$ LANGUAGE sql;
>
> select unnest21(string_to_array('23,2,3,4,5',','));
>
> Andrus.
>
> ----- Original Message ----- From: "Tom Lane" <t...@sss.pgh.pa.us>
> To: "Andrus" <kobrule...@hot.ee>
> Cc: "Pavel Stehule" <pavel.steh...@gmail.com>;
> <pgsql-general@postgresql.org>
> Sent: Monday, March 29, 2010 6:00 PM
> Subject: Re: [GENERAL] Splitting text column to multiple rows
>
>
>> "Andrus" <kobrule...@hot.ee> writes:
>>>
>>> Pavel,
>>>>
>>>> pa...@postgres:5481=# select unnest(string_to_array('23,2,3,4,5',','));
>>>> unnest
>>>> --------
>>>> 23
>>>> 2
>>>> 3
>>>> 4
>>>> (4 rows)
>>
>>> Result is wrong: it must contain 5 rows.
>>
>> Surely that's a copy-and-paste mistake?  I get 5 rows from this example.
>>
>> regards, tom lane
>
>

-- 
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply via email to