Re: Count of records in a row

From: Rémi Cura <remi(dot)cura(at)gmail(dot)com>
To: Merlin Moncure <mmoncure(at)gmail(dot)com>
Cc: Hubert Lubaczewski <depesz(at)depesz(dot)com>, Robert James <srobertjames(at)gmail(dot)com>, Postgres General <pgsql-general(at)postgresql(dot)org>
Subject: Re: Count of records in a row
Date: 2013-10-22 16:24:19
Message-ID: CAJvUf_vOhvn9y44OVmWEDhfVhBx5N3e2D_WLQkFMZRTat5W-dg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

OK,
just out of pure curiosity,
is it always the case or is it due to this particular aggregate?

Cheers,
Rémi-C

2013/10/22 Merlin Moncure <mmoncure(at)gmail(dot)com>

> On Tue, Oct 22, 2013 at 9:43 AM, Rémi Cura <remi(dot)cura(at)gmail(dot)com> wrote:
> > Thanks again for the precision !
> >
> > I still don't understand perfectly. We call the aggregate n times, and
> each
> > time we compute the aggregate, using (potentially) n rows, thus becoming
> (at
> > most) O(n*n).
> >
> > With a standard loop, I loop n times, and each times I only need the
> current
> > row plus the previous row which I put in memory, thus O(n).
>
> For posterity, the above is incorrect. Since the aggregate is ordered
> through the window function, it gets executed exactly once per output
> row. It behaves exactly like a loop. You know this because there is
> no array in the aggregate state.
>
> merlin
>

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Steve Crawford 2013-10-22 16:24:26 Re: pg_dumpall from a script
Previous Message Merlin Moncure 2013-10-22 16:21:43 Re: Count of records in a row