From: | M Sarwar <sarwarmd02(at)outlook(dot)com> |
---|---|
To: | Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at>, "pgsql-admin(at)lists(dot)postgresql(dot)org" <pgsql-admin(at)lists(dot)postgresql(dot)org> |
Subject: | Re: Like to RETURN SQL results set |
Date: | 2024-03-28 22:27:08 |
Message-ID: | DM4PR19MB5978F71CFF8C6626DD0DD5F8D33B2@DM4PR19MB5978.namprd19.prod.outlook.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-admin |
Laurenz:
Numbers of returning columns will vary dynamically.
Based on that SELECT * FROM func() AS (c1 integer, c2 text) is not applicable in my case.
Thanks,
Sarwar
________________________________
From: Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at>
Sent: Thursday, March 28, 2024 5:19 AM
To: M Sarwar <sarwarmd02(at)outlook(dot)com>; pgsql-admin(at)lists(dot)postgresql(dot)org <pgsql-admin(at)lists(dot)postgresql(dot)org>
Subject: Re: Like to RETURN SQL results set
On Wed, 2024-03-27 at 20:40 +0000, M Sarwar wrote:
> I am writing a dynamic function in which number of columns to be retrieved change
> depending on the parameter values passed while invoking the function.
> I am using CROSSTAB in the dynamic SQL.
> Once I prepare a dynamic SQL and I execute, I want the entire result set from
> the executed SQL to be returned to function RETURN.
> Is this possible? If yes, can you please point me to some examples.
No, this is not possible, unless you declare the function as "RETURNS SETOF record".
But then you have to specify the column list when you use the function, e.g.:
SELECT * FROM func() AS (c1 integer, c2 text)
Yours,
Laurenz Albe
From | Date | Subject | |
---|---|---|---|
Next Message | Erik Wienhold | 2024-03-28 22:46:04 | Re: Like to RETURN SQL results set |
Previous Message | Eduardo Barbachan | 2024-03-28 20:54:35 | Re: Mssql to postgres migration |