Re: OLAP, Aggregates, and order of operations

Поиск
Список
Период
Сортировка
От mlw
Тема Re: OLAP, Aggregates, and order of operations
Дата
Msg-id 3B855548.E03F436D@mohawksoft.com
обсуждение исходный текст
Ответ на OLAP, Aggregates, and order of operations  (mlw <markw@mohawksoft.com>)
Список pgsql-hackers
Tom Lane wrote:

> mlw <markw@mohawksoft.com> writes:
> > I need to do some OLAP stuff, and I asked previously if there were a way
> > to pass multiple parameters to an aggrigate function. i.e.:
> > I looked through the code and it is non-trivial to do,
>
> Offhand I don't know of any fundamental reason why it couldn't be done,
> but you're right that it'd take a fair amount of work.

I understand the implications of the work, but it would be VERY cool to be
able to do this for statistical stuff.

>
> > If I do this:
> > select mycube(value1) as d1, dimention(value2) as d2, dimention(value3)
> > as d3 group by value1;
> > Can I safely assume the following:
> > (1) mycube() will be called first
> > (2) Assuming dimention() has no final func, that final func of mycube()
> > will be called last.
>
> That might be true in the present code, but it strikes me as an awfully
> risky set of assumptions.  Also, it sounds like what you have in mind is
> to have some hidden state that all the aggregate functions will access;
> how then will you work if there are more than one set of these
> aggregates being used in a query?

What I was thinking is that I could use the state to hold a pointer returned
by palloc. I don't think I can handle multiple mycube() calls, but short of
reworking aggregates, I don't see any other way.

>
> If the needed parameters are all the same datatype, maybe you could put
> them into an array and pass the array as a single argument to the
> aggregate.

How would you do this without having to make multiple SQL calls?



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

Предыдущее
От: Massimo Dal Zotto
Дата:
Сообщение: Re: User locks code
Следующее
От: Ned Wolpert
Дата:
Сообщение: Re: Re: [JDBC] New backend functions? [was Re: JDBC ch