Re: Am I crazy or is this SQL not possible

From: "Aaron Bono" <postgresql(at)aranya(dot)com>
To: "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: Am I crazy or is this SQL not possible
Date: 2006-06-02 01:44:18
Message-ID: bf05e51c0606011844s5553241ev144934da7e52f5f0@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Is this SQL-99 compliant or a PostgreSQL specific query? I really like it
and have never seen this before.

-Aaron

On 6/1/06, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>
> "Collin Peters" <cadiolis(at)gmail(dot)com> writes:
> > What I would like to do is simply get the last date_sent and it's
> > status for every broadcast. I can't do a GROUP BY because I can't put
> > an aggregate on the status column.
>
> You missed the key idea about how to use DISTINCT ON.
>
> SELECT DISTINCT ON (email_broadcast_id) *
> FROM email_broadcast_history
> ORDER BY email_broadcast_id, date_sent DESC
>
> You order by the DISTINCT ON fields, then one or more additional fields
> to select the representative row you want within each DISTINCT ON group.

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Tom Lane 2006-06-02 02:41:17 Re: Am I crazy or is this SQL not possible
Previous Message David Clarke 2006-06-02 01:19:25 Re: Table design question