Re: Aggregate time data on half hour interval - Mailing list pgsql-general

From Lars
Subject Re: Aggregate time data on half hour interval
Date
Msg-id Pine.BSF.4.10.10007192254020.9376-100000@maximillion.sscsinc.com
Whole thread Raw
In response to Re: Aggregate time data on half hour interval  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
It may be ugly, but it sure works! Here is my query:

SELECT Date, interval(trunc(date_part('epoch', time)/1800) * 1800) AS
HALFHOUR, SUM(Data)
FROM Table
GROUP BY Date, HALFHOUR;

This seems to work great, and I don't see any performance hit either.
Thanks,

-Lars

On Thu, 20 Jul 2000, Tom Lane wrote:

> Lars <lars@sscsinc.com> writes:
> > What I would like to do though is aggregate by each half hour or maybe
> > even 20 minutes. Does anyone know a good way to do this?
>
> I don't have a *good* answer, but a brute-force way is
>
> * convert timestamp to integer seconds with date_part('epoch', foo)
> * round to a multiple of desired time interval
> * convert back to timestamp for display via timestamp()
>
> In the long run it seems like date_trunc ought to be more flexible
> than it is...
>
>             regards, tom lane
>


pgsql-general by date:

Previous
From: Thomas Lockhart
Date:
Subject: Re: Aggregate time data on half hour interval
Next
From: Tom Lane
Date:
Subject: Re: Query problem - explicit casts