Re: selecting a attribute from a function - Mailing list pgsql-general

From Michael Fuhr
Subject Re: selecting a attribute from a function
Date
Msg-id 20051130043738.GA69148@winnie.fuhr.org
Whole thread Raw
In response to selecting a attribute from a function  ("A.j. Langereis" <a.j.langereis@inter.nl.net>)
List pgsql-general
On Thu, Nov 24, 2005 at 11:47:53AM +0100, A.j. Langereis wrote:
> But how can I do something like this:
>
> select my_pg_func(table2.some_col).col1
> from table2.some_col

Use another set of parentheses around the function call, as at the
end of this example:

CREATE TYPE test_type AS (col1 integer, col2 integer);

CREATE FUNCTION test_func() RETURNS test_type AS $$
DECLARE
    retval  test_type;
BEGIN
    retval.col1 := 123;
    retval.col2 := 456;
    RETURN retval;
END;
$$ LANGUAGE plpgsql;

SELECT * FROM test_func();
 col1 | col2
------+------
  123 |  456
(1 row)

SELECT (test_func()).col1;
 col1
------
  123
(1 row)

--
Michael Fuhr

pgsql-general by date:

Previous
From: Michael Fuhr
Date:
Subject: Re: strange behaviour in plpgsql:null arguments
Next
From: Martijn van Oosterhout
Date:
Subject: Re: Finding uniques across a big join