Re: View vs Stored Proc Performance

Поиск
Список
Период
Сортировка
От Jason Tesser
Тема Re: View vs Stored Proc Performance
Дата
Msg-id 98bbb46a0909111427v70df55e2p5f3579f37b53faf1@mail.gmail.com
обсуждение исходный текст
Ответ на Re: View vs Stored Proc Performance  (Merlin Moncure <mmoncure@gmail.com>)
Ответы Re: View vs Stored Proc Performance
Список pgsql-performance
Right what I was wondering is is this better done in a view? or a stored proc?   I am guessing based on your initial response the view is better performance.  These are the types of queries I will be doing though.

On Fri, Sep 11, 2009 at 5:01 PM, Merlin Moncure <mmoncure@gmail.com> wrote:
On Fri, Sep 11, 2009 at 2:56 PM, Jason Tesser <jasontesser@gmail.com> wrote:
> OK so in my case I have a Person, Email, Phone and Address table.  I want to
> return the Person and an Array of the others. so my return type would be
> something like Person, Email[], Phone[], Address[]
>
> When passed a personId.
>
> Are you saying this is better in a view.  Create a view that can return that
> as oppessed to 1. defining a type for a function to return or 2. a function
> that returns 4 out parameters (Person, Address[] ,....)

if you are using 8.3+ and are wiling to make a composite type:

create table person_t(email text, phone text, address text);

select person_id, array_agg((email, phone, address)::person_t) from
person group by 1;

or, detail fields are in another table:

select person_id, (select array(select (email, phone,
address)::person_t) from detail where person_id = p.person_id) from
person_t;

merlin

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

Предыдущее
От: Merlin Moncure
Дата:
Сообщение: Re: View vs Stored Proc Performance
Следующее
От: Robert Haas
Дата:
Сообщение: Re: slow query : very simple delete, 100% cpu, nearly no disk activity