From: | "Elisha Allen" <elisha(at)unm(dot)edu> |
---|---|
To: | <pgsql-docs(at)postgresql(dot)org> |
Subject: | 9.7. Table Functions |
Date: | 2003-09-05 20:34:48 |
Message-ID: | 009101c373ed$35b7b0a0$57481881@maelstrom |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-docs |
Hello,
I hope I am posting this to the approprate list. I am somewhat new to postgres, and have been extensively reading the documentation over the last few days. As a whole, it is very helpful and informative. Great work!
Today I came across the following issue with table functions:
I'm trying to write a table function that returns a recordset. I'm running postgres 7.3.3 on redhat Following postgres Documentation Chapter 9.7, I used the following commands to test this:
CREATE TABLE foo (fooid int, foosubid int, fooname text);
CREATE FUNCTION getfoo(int) RETURNS setof foo AS '
SELECT * FROM foo WHERE fooid = $1;
' LANGUAGE SQL;
SELECT * FROM getfoo(1) AS t1;
Unfortunately, the command:
SELECT * FROM getfoo(1) AS t1;
returns a:
server parse error at or near "("
Is there something I'm missing here? As a workaround I tried:
SELECT getfoo(1) AS t1;
This command ran, but returned a row t1 with a series of numbers in it, rather than a recordset of columns and values as the documentation suggests when it says:
"If the function returns a composite type, the result columns get the same names as the individual attributes of the type."
Thank you very much for your help, and please let me know if I can be of any assistance in trouble shooting this issue/ updating the documentation on this issue.
Elisha
From | Date | Subject | |
---|---|---|---|
Next Message | Peter Eisentraut | 2003-09-05 20:39:25 | Re: minor documentation improvements |
Previous Message | Bruno Wolff III | 2003-09-05 19:11:14 | Re: Time input documentation error |