Re: [SQL] selecting records X minutes apart

From: Charlie <scorpdaddy(at)hotmail(dot)com>
To: lists-pgsql(at)useunix(dot)net,pgsql-sql(at)postgresql(dot)org
Subject: Re: [SQL] selecting records X minutes apart
Date: 2011-06-04 20:42:33
Message-ID: BLU0-SMTP138C0D87721A4D87DA26461CE7E0@phx.gbl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

SELECT a.*
FROM foo a
INNER JOIN foo b
ON b.id = a.id
AND b.ts >= a.ts + '5 minutes'
GROUP BY a.id, a.ts
ORDER BY a.id, a.ts

Not clear yet on the needs, but this may give a start.

----- Reply message -----
From: lists-pgsql(at)useunix(dot)net
Date: Sat, Jun 4, 2011 4:15 pm
Subject: [SQL] selecting records X minutes apart
To: <pgsql-sql(at)postgresql(dot)org>

On Sat, Jun 04, 2011 at 11:45:08AM +0000, Jasen Betts wrote:
> On 2011-06-03, lists-pgsql(at)useunix(dot)net <lists-pgsql(at)useunix(dot)net> wrote:
> >
> > ID TS (HH:MM)
> > -------------------
> > 0 20:00
> > 0 20:05
> > 0 20:10
> > 1 20:03
> > 1 20:09
> >
> >
> > Does my question make sense?
>
> no, why is (1,20:04) excluded, but (0,20:05) included?
> both records are 5 minutes from the newest.

Jasen,

(1,20:04) is excluded because it's timestamp is less than 5 minutes from the
previous record with the same ID (1,20:03), (0,20:05) is included for the
opposite reason.

Let me restate my requirement again with a little more detail. I want to
select records grouped by ID, ordered by timestamp, in ascending order so I'm
starting with the oldest, that are at least X minutes apart.

I hope that helps.

Thanks again,
Wayne

Browse pgsql-sql by date

  From Date Subject
Next Message lists-pgsql 2011-06-04 20:49:55 Re: selecting records X minutes apart
Previous Message Richard Broersma 2011-06-04 20:09:39 Re: selecting records X minutes apart