Re: how do i get differences between rows

From: Bruno Wolff III <bruno(at)wolff(dot)to>
To: teknokrat <teknokrat(at)yahoo(dot)com>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: how do i get differences between rows
Date: 2003-12-24 03:31:56
Message-ID: 20031224033156.GB16470@wolff.to
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

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.

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Iain 2003-12-24 03:56:55 Re: how to preserve \n in select statement
Previous Message Tom Lane 2003-12-23 23:39:27 Re: Distributed keys