Re: An aggregate function on ARRAY

Поиск
Список
Период
Сортировка
От Merlin Moncure
Тема Re: An aggregate function on ARRAY
Дата
Msg-id AANLkTimOV8omUas+n6hK7ijRj5jZUm=FFhx62PvkaZ5w@mail.gmail.com
обсуждение исходный текст
Ответ на An aggregate function on ARRAY  (Rafal Pietrak <rafal@zorro.isa-geek.com>)
Ответы Re: An aggregate function on ARRAY  (Rafal Pietrak <rafal@zorro.isa-geek.com>)
Список pgsql-general
On Wed, Aug 11, 2010 at 8:42 AM, Rafal Pietrak <rafal@zorro.isa-geek.com> wrote:
> Hi,
>
> I've started using ARRAY data type recently, and I fell into the
> following problem:
>
> When I have a relatively large ARRAY (like [1:500]) takeing an aggregate
> function on its elements is not so easy. One has to iterate all the
> elements, like this:
>
> SELECT min(A[1]) as a1, min(A[2]) as a2, ...
>
> This is because aggregate functions are not defined on ARRAY types. Or
> may be there is an easier and more readable way to do that?

If you have a fixed number of elements across the entire table, you
can accomplish what I think you are trying to do by expanding all the
arrays in the table and regrouping based on generate_series(), but
this is a horribly inefficient way to go.  Are you sure you aren't
looking at table design issue?

merlin

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

Предыдущее
От: "Davor J."
Дата:
Сообщение: How-to question: pre-parsing and pre-planning dynamic sql statements
Следующее
От: Merlin Moncure
Дата:
Сообщение: Re: How-to question: pre-parsing and pre-planning dynamic sql statements