From: | "Andrus" <kobruleht2(at)hot(dot)ee> |
---|---|
To: | "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com> |
Cc: | "pgsql-general" <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: How to use row values as function parameters |
Date: | 2016-05-14 21:13:12 |
Message-ID: | 7263ADA7656144AE911BF5EB386A35FD@dell2 |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Hi!
Thank you.
>Use a CTE and move the function call to the select list - then explode the result in the main query.
>Basically:
>WITH func_cte AS (
>SELECT func_call(tbl)
FROM tbl
)
>SELECT (func_call).*
>FROM func_cte;
>The parens are required to make the parser see func_call as a column name instead of a table name.
I tried in 9.5
CREATE or replace FUNCTION crtKAIVE(
_doktyybid text default 'GVY'
)
RETURNS TABLE (
id integer
)
AS $f_crkaive$
select 1
$f_crkaive$ LANGUAGE sql STABLE;
create temp table ko ( doktyyp text ) on commit drop;
insert into ko values ('G');
WITH func_cte AS (
SELECT crtKAIVE(ko.doktyyp)
FROM ko
)
SELECT (crtKAIVE).*
FROM func_cte;
but got strange error
ERROR: syntax error at or near ""
LINE 18: )
How to fix ?
Andrus.
From | Date | Subject | |
---|---|---|---|
Next Message | Adrian Klaver | 2016-05-14 21:34:11 | Re: How to use row values as function parameters |
Previous Message | Adrian Klaver | 2016-05-14 21:01:24 | Re: How to use row values as function parameters |