Re: How can I get the last element out of GROUP BY sets?

From: Robert Creager <Robert_Creager(at)LogicalChaos(dot)org>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, PGSQL <pgsql-sql(at)postgresql(dot)org>, PGSQL <pgsql-sql(at)postgresql(dot)org>
Subject: Re: How can I get the last element out of GROUP BY sets?
Date: 2004-01-19 17:38:53
Message-ID: 20040119103853.01c87b83.Robert_Creager@LogicalChaos.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

When grilled further on (Mon, 19 Jan 2004 00:44:30 -0500),
Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> confessed:

> Robert Creager <Robert_Creager(at)LogicalChaos(dot)org> writes:
> > ... one piece of data I need is the last value for each GROUP BY
> > period. Alas, I cannot figure out how to do this.
>
> SELECT DISTINCT ON (rather than GROUP BY) could get this done for you.
>

I had my whine all ready as to how I still couldn't figure it out, when I
figured it out:

...
SELECT p.period, etday
FROM (SELECT DISTINCT ON ( period )
date_trunc( 'hour', "when" ) AS period,
etday
FROM readings
ORDER BY period, "when" DESC) AS p
...

Thanks for the tip.

Cheers,
Rob

--
08:10:55 up 21 days, 21:58, 4 users, load average: 2.15, 2.06, 2.02

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Jim Johannsen 2004-01-20 00:13:20 Re: Is it possible in PostgreSQL?
Previous Message Tom Lane 2004-01-19 15:07:54 Re: name of a column returned from a table function