| From: | Mark Kelly <pgsql(at)wastedtimes(dot)net> |
|---|---|
| To: | pgsql-novice(at)postgresql(dot)org |
| Subject: | Re: Order by provided IDs? |
| Date: | 2010-07-14 19:13:20 |
| Message-ID: | 201007142013.20168.pgsql@wastedtimes.net |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-novice |
Hi.
On Wednesday 14 Jul 2010 at 19:22 Thomas Kellerer wrote:
> Mark Kelly wrote on 14.07.2010 20:03:
> > Hi.
> >
> > If my query is:
> >
> > SELECT art_id, art_headline, art_date
> > FROM article
> > WHERE art_id IN (357, 344, 120, 258, 369, 195, 343, 370);
> >
> > can I ask Postgres to return the rows in the order of the IDs in the IN
> > clause? They are in a specific order defined outside the database.
>
> Something like:
>
> SELECT art_id, art_headline, art_date
> FROM article a
> JOIN (values (1,357), (2,344), (3, 120), (4, 258), (5, 369), (6, 195),
> (7, 343), (8, 370) ) t(sort_order, id) ON t.id = a.art_id ORDER BY
> t.sort_order
Ah, that's pretty cool - I didn't know I could do a join with anything other
than a table. I'll try it when I get back to work tomorrow.
Thanks for the reply,
Mark
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Charles Holleran | 2010-07-15 05:31:23 | function runs slow |
| Previous Message | Thomas Kellerer | 2010-07-14 18:22:44 | Re: Order by provided IDs? |