Re: function with multiple return values

Поиск
Список
Период
Сортировка
От Scott Serr
Тема Re: function with multiple return values
Дата
Msg-id 4CD6F183.4020706@theserrs.net
обсуждение исходный текст
Ответ на Re: function with multiple return values  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: function with multiple return values  (Pavel Stehule <pavel.stehule@gmail.com>)
Список pgsql-general
On 11/07/2010 08:53 AM, Tom Lane wrote:
> Andreas Kretschmer<akretschmer@spamfence.net>  writes:
>> Scott Serr<serrs@theserrs.net>  wrote:
>>> Ideas on how to uniquely name the first and second set of "perc,
>>> entry_date"?
>> You can use alias-names for the 2 queries, like:
>> test=*# select foobar.a as x, foobar.b as y, bar.* from (select * from foo()) foobar, (select * from foo()) bar ;
> You don't really need the sub-selects: you can put aliases on functions
> in FROM.
>
>     select * from foo(...) as f1(a,b), foo(...) as f2(x,y);
>
>             regards, tom lane
>

Thanks Tom, Andreas, and Osvaldo...

I've found I really need these on the Select part rather than the From.

select otherstuff.*, foo(...) as f1(a,b), foo(...) as f2(x,y) from
otherstuff;
...won't work.  It says:
      subquery must return only one column

Funny thing is
    select (foo(...)).*, (foo(...)).*;
...works fine, just has duplicate column names, so they are hard to get at.

I modeled this after examples here
http://www.postgresonline.com/journal/index.php?/archives/129-Use-of-OUT-and-INOUT-Parameters.html

I really only want a single record back from my function, but the
multi-record return looked easier. I need some kind of control of how
the columns are named per call.

Maybe this isn't possible...  not alot of docs in this area.

Thanks,
Scott



В списке pgsql-general по дате отправления:

Предыдущее
От: Alexander Farber
Дата:
Сообщение: Re: Finding rank of a single record
Следующее
От: Pavel Stehule
Дата:
Сообщение: Re: function with multiple return values