From: | teknokrat <teknokrat(at)yahoo(dot)com> |
---|---|
To: | pgsql-sql(at)postgresql(dot)org |
Subject: | Re: how do i get differences between rows |
Date: | 2003-12-23 13:23:35 |
Message-ID: | bsc41u$1ps8$1@news.hub.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Bruno Wolff III wrote:
> On Thu, Dec 18, 2003 at 12:21:35 +0000,
> teknokrat <teknokrat(at)yahoo(dot)com> wrote:
>
>>I am after an sql query that can give the differnces between consecutive
>>timestamp values in the resultset.
>>anyone know how to do this?
>
>
> I think you can do something like the following (untested) on most systems.
> select a.stamp - (select max(stamp) from tablename
> where tablename.stamp < a.stamp) from tablename;
>
> For postgres this (also untested) might be faster if there is an index
> on stamp.
> select a.stamp - (select stamp from tablename where tablename.stamp < a.stamp
> order by stamp desc limit 1) from tablename;
>
> The above relies on timestamps being unique. The difference for the smallest
> timestamp will be null.
>
> ---------------------------(end of broadcast)---------------------------
> TIP 8: explain analyze is your friend
>
this may give me difference between current row and oldest row but what
I want is row(i).timestamp - row(i-1).timestamp. Also I would like to do
it for timestamp values whose hours are within normal working hours i.e 9-5.
From | Date | Subject | |
---|---|---|---|
Next Message | Chris Gamache | 2003-12-23 16:46:31 | Historic Query using a view/function ? |
Previous Message | Chris Travers | 2003-12-23 13:13:04 | Re: INHERITS and Foreign keys |