Bringing other columns along with a GROUP BY clause

From: "Rob Richardson" <Rob(dot)Richardson(at)rad-con(dot)com>
To: <pgsql-general(at)postgresql(dot)org>
Subject: Bringing other columns along with a GROUP BY clause
Date: 2009-02-05 19:43:07
Message-ID: 04A6DB42D2BA534FAC77B90562A6A03DC57467@server.rad-con.local
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Greetings!

I've run into this problem a few times. There must be a solution, but I
don't know what it is.

I have a table that has three interesting columns: coil_id, charge, and
coldspot_time. A charge can have several coils, so there are several
records with differing coil_ids but the same charge. I want a list of
the coils whose coldspot_times are the largest for their charge. I can
easily get a list of the maximum coldspot times for each charge:

Select charge, max(coldspot_time)
>From inventory
Group by charge

But how do I find out what coil has the maximum coldspot time?

Select coil_id, charge, max(coldspot_time)
>From inventory
Group by charge

Doesn't work because SQL can't read my mind well enough to know which of
the four coil_ids in the given charge is the one I want.

Thank you very much!

RobR

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Sam Mason 2009-02-05 20:07:42 Re: Bringing other columns along with a GROUP BY clause
Previous Message Alvaro Herrera 2009-02-05 19:26:48 Re: Pet Peeves?