2012/7/10 Tom Lane <t...@sss.pgh.pa.us>: > Dimitri Fontaine <dimi...@2ndquadrant.fr> writes: >> We could imagine several syntax to show up the idea, common keywords >> here include LAMBDA, FLET or LABELS, but I think that expanding WITH >> would be preferable for us. > >> WITH FUNCTION foo(param list) returns rettype language foo AS ( >> definition here >> ) >> <query using foo() here>; > > I like this idea. This gets rid of both the "how to pass parameters" > and the "how to return results" issues that exist with DO, as well as > assorted implementation problems that you hinted at by asking whether > DO would still be a utility command.
what is use case for this statement? Regards Pavel > > In the syntax-bikeshedding department, we'd still need the function body > to be a string literal, and I think we'd want the ability to add > options such as IMMUTABLE/VOLATILE. So I'd be inclined to move all > these options inside the parentheses that the WITH syntax dictates. > Perhaps > > WITH FUNCTION foo(paramlist) AS ( > returns int > as $$ ... $$ > language plpgsql > ... other CREATE FUNCTION options as needed ... > ) > query here ... > > regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers