Re: Problem with result ordering
От | Tommy Gildseth |
---|---|
Тема | Re: Problem with result ordering |
Дата | |
Msg-id | 45B906FA.5050208@gildseth.com обсуждение исходный текст |
Ответ на | Re: Problem with result ordering (Tom Lane <tgl@sss.pgh.pa.us>) |
Список | pgsql-general |
Tom Lane wrote: > Thorsten =?iso-8859-1?q?K=F6rner?= <t.koerner@cappuccinosoft.de> writes: > >> select m_id, m_u_id, m_title, m_rating from tablename where m_id in (26250, >> 11042, 16279, 42197, 672089); >> > You could rewrite the query as > > select ... from tablename where m_id = 26250 > union all > select ... from tablename where m_id = 11042 > union all > select ... from tablename where m_id = 16279 > union all > select ... from tablename where m_id = 42197 > union all > select ... from tablename where m_id = 672089 > > This isn't guaranteed by the SQL spec to produce the results in any > particular order either; but there's no good reason for PG to rearrange > the order of the UNION arms, whereas there are plenty of good reasons to > try to optimize fetching of individual rows. > Or a variant of this, SELECT m_id, m_u_id, m_title, m_rating from tablename where m_id in (26250, 11042, 16279, 42197, 672089) ORDER BY m_id=26250, m_id=11042, m_id=16279, m_id=42197, m_id=672089; -- Tommy Gildseth http://www.gildseth.com/
В списке pgsql-general по дате отправления: