Re: expression evaluation with expected datatypes
От | Pavel Stehule |
---|---|
Тема | Re: expression evaluation with expected datatypes |
Дата | |
Msg-id | CAFj8pRAAfTTR_NpER5toir_Jjj=A_dsJCuby8Y0FEA1ybnOAEw@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: expression evaluation with expected datatypes (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: expression evaluation with expected datatypes
|
Список | pgsql-hackers |
2012/7/10 Tom Lane <tgl@sss.pgh.pa.us>: > Dimitri Fontaine <dimitri@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
В списке pgsql-hackers по дате отправления: