From: | "Charles Clavadetscher" <clavadetscher(at)swisspug(dot)org> |
---|---|
To: | "'Aislan Luiz Wendling'" <aislanluiz(at)hotmail(dot)com>, <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: Array value from table as parameter |
Date: | 2016-07-22 12:31:11 |
Message-ID: | 006901d1e414$f48f35c0$ddada140$@swisspug.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Hello
> From: pgsql-general-owner(at)postgresql(dot)org [mailto:pgsql-general-owner(at)postgresql(dot)org] On Behalf Of Aislan Luiz Wendling
> Sent: Mittwoch, 20. Juli 2016 19:17
> To: pgsql-general(at)postgresql(dot)org
> Subject: [GENERAL] Array value from table as parameter
>
> Hi,
>
> I need to pass an array as a parameter in a function, but it is a part of a trigger that get a "new" value.
>
> I've tested it like
>
> select function_x(10000,555555,array[['xxxxx'],['yyyyy']])
> or
> select function_x(10000,555555,array[['xxxxx','yyyyy']])
>
> and it worked.
>
> But if I use
>
> select function_x(10000,555555,new.situations)
>
> it doesn't work, as the value comes like this: {"xxxxx","yyyyy"}
> I couldn't find a function that converts {} values back to [] without treat it as a string and use replace, what I think that is
not the ideal solution because it may can't satisfy more complex arrays.
Would it help to simply cast the argument to TEXT[]?
select function_x(10000,555555,(new.situations)::TEXT[]);
I am not sure if the extra parenthesis are necessary.
Regards
Charles
From | Date | Subject | |
---|---|---|---|
Next Message | John R Pierce | 2016-07-23 00:24:03 | yum repo, pgloader |
Previous Message | Alex Ignatov | 2016-07-22 11:14:24 | Re: pg_dump without any SET command in header of output plain text sql file |