From: | "Jeremy Smith" <jer(at)highboard(dot)com> |
---|---|
To: | <pgsql-sql(at)postgresql(dot)org> |
Subject: | DISTINCT ON troubles |
Date: | 2004-02-19 18:10:30 |
Message-ID: | FKEOIJEHOIKIOEHCGNCLEENEEDAA.jer@highboard.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Hi,
I have a query that reads:
SELECT DISTINCT ON (messageboard.threadid) messageboard.threadid,
messageboard.topic, owner.ownerid, owner.username FROM messageboard, owner
WHERE messageboard.ownerid=owner.ownerid AND messageboard.leagueid =
'$leagueid' ORDER BY messageboard.messageid DESC LIMIT $entries_on_page
OFFSET $beginThread"
The purpose of this query is to retrieve unique threadid's in the order of
the most recent posts that have been made to each thread. When I use this
query I get an error that:
"SELECT DISTINCT ON expressions must match initial ORDER BY expressions".
Of course, if I put ORDER BY threadid in the query it would order it in the
order that the thread was created, not in the last post made.
I have tried using GROUP BY threadID, I get a similar order.
Am I just approaching this all wrong and need to create a temporary table
and draw from that, or is there a way to salvage this query?
Thanks so much,
Jeremy
From | Date | Subject | |
---|---|---|---|
Next Message | elein | 2004-02-19 18:55:05 | Re: CHAR(n) always trims trailing spaces in 7.4 |
Previous Message | Philippe Lang | 2004-02-19 17:28:49 | Re: crosstabs |