Selecting from a function(x,y) returning a row-type(sum, prod)

From: Heiko Klein <Heiko(dot)Klein(at)gmx(dot)net>
To: pgsql-general(at)postgresql(dot)org
Subject: Selecting from a function(x,y) returning a row-type(sum, prod)
Date: 2007-04-30 13:45:18
Message-ID: 4635F2EE.3040306@gmx.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi,

I'm trying to select data from a table, converting two values and return
all four. Maybe this is best explained with an example:

The function from the documentation on pl/pgsql:

CREATE FUNCTION sum_n_product(x int, y int, OUT sum int, OUT prod int) AS $$
BEGIN
sum := x + y;
prod := x * y;
END;
$$ LANGUAGE plpgsql;

And a table 'myvals' with x and y integer values:
CREATE TABLE myvals (INT x, INT y);

How can I do the following:

select * from myvals, sum_n_product(myvals.x, myvals.y);

Here I get an error:
ERROR: function expression in FROM may not refer to other relations of
same query level

What I want is a view with the values:

x | y | sum | prod |

Best regards,

Heiko

Responses

Browse pgsql-general by date

  From Date Subject
Next Message John D. Burger 2007-04-30 14:09:11 Re: Temporal Units
Previous Message Rich Shepard 2007-04-30 13:15:52 Re: Temporal Units