From: | Erwin Brandstetter <brsaweda(at)gmail(dot)com> |
---|---|
To: | pgsql-admin(at)postgresql(dot)org |
Subject: | Re: get the array content whis the select clause |
Date: | 2007-06-06 15:48:35 |
Message-ID: | 1181144915.299010.239270@p77g2000hsh.googlegroups.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-admin |
On Jun 5, 12:13 pm, kristo(dot)k(dot)(dot)(dot)(at)skype(dot)net (Kristo Kaiv) wrote:
> i guess this what you meant:
> (not a nice solution though) writing a function that returns the set
> would be a better idea
>
> create table testintarr (iarr int[]);
> insert into testintarr values ('5,6,7,8');
>
> test=# select iarr[idx] from (select iarr, generate_series(array_lower
> (iarr,1), array_upper(iarr,1)) as idx from testintarr) asdf;
> iarr
Function would look like this:
CREATE OR REPLACE FUNCTION f_intarr_to_set(integer[])
RETURNS SETOF integer AS
$BODY$
BEGIN
FOR i IN array_lower($1,1) .. array_upper($1,1) LOOP
RETURN NEXT $1[i];
END LOOP;
END;
$BODY$
LANGUAGE 'plpgsql';
SELECT * FROM f_intarr_to_set('{1,3,5,7,9,321}');
But I think I like Kristos query even better. :)
Regards
Erwin
From | Date | Subject | |
---|---|---|---|
Next Message | Igor Neyman | 2007-06-06 15:50:52 | Re: Change order of table-columns in pg_catalog.pg_attribute.attnum |
Previous Message | Erwin Brandstetter | 2007-06-06 15:21:48 | Re: Change order of table-columns in pg_catalog.pg_attribute.attnum |