Re: anonymous composite types for Table Functions (aka - Mailing list pgsql-patches
From | Joe Conway |
---|---|
Subject | Re: anonymous composite types for Table Functions (aka |
Date | |
Msg-id | 3D4E18F9.6030902@joeconway.com Whole thread Raw |
In response to | Re: anonymous composite types for Table Functions (aka SRFs) (Bruce Momjian <pgman@candle.pha.pa.us>) |
Responses |
Re: anonymous composite types for Table Functions (aka
Re: anonymous composite types for Table Functions (aka |
List | pgsql-patches |
Joe Conway wrote: > Simple change -- patch attached. Of course, the simple change has ripple effects! Here's a patch for the rangefunc regression test for the new behavior. Joe Index: src/test/regress/expected/rangefuncs.out =================================================================== RCS file: /opt/src/cvs/pgsql-server/src/test/regress/expected/rangefuncs.out,v retrieving revision 1.2 diff -c -r1.2 rangefuncs.out *** src/test/regress/expected/rangefuncs.out 16 Jul 2002 05:53:34 -0000 1.2 --- src/test/regress/expected/rangefuncs.out 5 Aug 2002 05:52:01 -0000 *************** *** 48,56 **** -- sql, proretset = f, prorettype = b CREATE FUNCTION getfoo(int) RETURNS int AS 'SELECT $1;' LANGUAGE SQL; SELECT * FROM getfoo(1) AS t1; ! getfoo ! -------- ! 1 (1 row) CREATE VIEW vw_getfoo AS SELECT * FROM getfoo(1); --- 48,56 ---- -- sql, proretset = f, prorettype = b CREATE FUNCTION getfoo(int) RETURNS int AS 'SELECT $1;' LANGUAGE SQL; SELECT * FROM getfoo(1) AS t1; ! t1 ! ---- ! 1 (1 row) CREATE VIEW vw_getfoo AS SELECT * FROM getfoo(1); *************** *** 65,74 **** DROP FUNCTION getfoo(int); CREATE FUNCTION getfoo(int) RETURNS setof int AS 'SELECT fooid FROM foo WHERE fooid = $1;' LANGUAGE SQL; SELECT * FROM getfoo(1) AS t1; ! getfoo ! -------- ! 1 ! 1 (2 rows) CREATE VIEW vw_getfoo AS SELECT * FROM getfoo(1); --- 65,74 ---- DROP FUNCTION getfoo(int); CREATE FUNCTION getfoo(int) RETURNS setof int AS 'SELECT fooid FROM foo WHERE fooid = $1;' LANGUAGE SQL; SELECT * FROM getfoo(1) AS t1; ! t1 ! ---- ! 1 ! 1 (2 rows) CREATE VIEW vw_getfoo AS SELECT * FROM getfoo(1); *************** *** 84,91 **** DROP FUNCTION getfoo(int); CREATE FUNCTION getfoo(int) RETURNS setof text AS 'SELECT fooname FROM foo WHERE fooid = $1;' LANGUAGE SQL; SELECT * FROM getfoo(1) AS t1; ! getfoo ! -------- Joe Ed (2 rows) --- 84,91 ---- DROP FUNCTION getfoo(int); CREATE FUNCTION getfoo(int) RETURNS setof text AS 'SELECT fooname FROM foo WHERE fooid = $1;' LANGUAGE SQL; SELECT * FROM getfoo(1) AS t1; ! t1 ! ----- Joe Ed (2 rows) *************** *** 139,147 **** DROP FUNCTION getfoo(int); CREATE FUNCTION getfoo(int) RETURNS int AS 'DECLARE fooint int; BEGIN SELECT fooid into fooint FROM foo WHERE fooid = $1;RETURN fooint; END;' LANGUAGE 'plpgsql'; SELECT * FROM getfoo(1) AS t1; ! getfoo ! -------- ! 1 (1 row) CREATE VIEW vw_getfoo AS SELECT * FROM getfoo(1); --- 139,147 ---- DROP FUNCTION getfoo(int); CREATE FUNCTION getfoo(int) RETURNS int AS 'DECLARE fooint int; BEGIN SELECT fooid into fooint FROM foo WHERE fooid = $1;RETURN fooint; END;' LANGUAGE 'plpgsql'; SELECT * FROM getfoo(1) AS t1; ! t1 ! ---- ! 1 (1 row) CREATE VIEW vw_getfoo AS SELECT * FROM getfoo(1);
pgsql-patches by date: