From: | Michael J Davis <michael(dot)j(dot)davis(at)tvguide(dot)com> |
---|---|
To: | "'Chris Bitmead'" <chris(dot)bitmead(at)bigfoot(dot)com>, "pgsql-sql(at)postgresql(dot)org" <pgsql-sql(at)postgreSQL(dot)org> |
Subject: | RE: [SQL] Finding the "most recent" rows |
Date: | 1999-04-22 14:53:18 |
Message-ID: | 93C04F1F5173D211A27900105AA8FCFC145408@lambic.prevuenet.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Try
select * from the_place order by the_time desc limit 2;
-----Original Message-----
From: Chris Bitmead [SMTP:chris(dot)bitmead(at)bigfoot(dot)com]
Sent: Thursday, April 22, 1999 8:45 AM
To: pgsql-sql(at)postgresql(dot)org
Subject: Re: [SQL] Finding the "most recent" rows
Try
SELECT the_place, max(the_time) FROM the_place GROUP BY the_place;
Julian Scarfe wrote:
>
> I have a table (representing a set of observations) with datetime
fields and a
> non-unique place field.
>
> e.g.
> create table obs (
> the_time datetime,
> the_place char(8),
> ...other fields...
> )
>
> I'd like an efficient way to pull out the most recent row (i.e.
highest
> datatime) belonging to *each* of a number of places selected by a
simple
> query.
>
> e.g. given a table such as:
>
> the_time the_place ...
> 0910 London
> 1130 London
> 0910 Paris
> 0930 London
> 0840 Paris
> 1020 London
> 0740 Paris
>
> I'd like to select:
> 1130 London
> 0910 Paris
>
> Most of my attempts at this (as an SQL novice) feel very clumsy
and
> inefficient. Is there an efficient way of doing this in SQL?
> --
>
> Julian Scarfe
--
Chris Bitmead
http://www.bigfoot.com/~chris.bitmead
mailto:chris(dot)bitmead(at)bigfoot(dot)com
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 1999-04-22 15:29:31 | Re: [SQL] Finding the "most recent" rows |
Previous Message | George Moga | 1999-04-22 14:46:31 | Re: [SQL] Finding the "most recent" rows |