Re: Cumulative count (running total) window fn

From: Oliver Kohll - Mailing Lists <oliver(dot)lists(at)gtwm(dot)co(dot)uk>
To: Magnus Hagander <magnus(at)hagander(dot)net>
Cc: pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: Re: Cumulative count (running total) window fn
Date: 2010-04-29 10:39:43
Message-ID: 380DA65E-BEC7-4F4A-86A5-A1D8E4CDD32E@gtwm.co.uk
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general


On 29 Apr 2010, at 10:01, Magnus Hagander wrote:
>>
>> select extract(year from signup_date),
>> count(email_address),
>> sum(count(email_address)) over (partition by 1 order by 1 asc rows unbounded preceding)
>> from email_list group by 1 order by 1;
>>
>> Does anyone have any other ideas?
>
> Aren't you looking for something along the line of:
>
> SELECT year, sum(c) over (order by year)
> FROM (
> SELECT extract(year from signup_date) AS year, count(email_address) AS c
> FROM email_list
> GROUP BY extract(year from signup_date)
> )
>
> (adjust for typos, I didn't test it)

Yes that does work thanks, if you give the subquery a name. I'd still like to know if it's possible to do with a window function rather than a subquery.

Oliver Kohll

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Thom Brown 2010-04-29 11:02:31 Re: Cumulative count (running total) window fn
Previous Message A.Bhattacharya 2010-04-29 09:52:19 Java Memory Issue while Loading Postgres library