2007/1/25, Thorsten Körner <t.koerner@cappuccinosoft.de>:
> Hi,
>
> when I fire the following query:
> select m_id, m_u_id, m_title, m_rating from tablename where m_id in (26250,
> 11042, 16279, 42197, 672089);
>
> I will get the same results in the same order, as in in the next query:
> select m_id, m_u_id, m_title, m_rating from tablename where m_id in
> (11042,42197,672089,26250,16279);
>
> I wonder, how it is possible, to retrieve the results in the same order, as
> queried in the list. The listed IDs are from an application outside the
> database.
>
> Version is PostgreSQL 8.2.1
>
> Has anyone an idea, how to do this, while PostgreSQL knows nothing about
> hints, like oracle does?
obvious solution is to create temporary table like
create temp table tmp ( id serial, key integer );
then populate it with your list in order,
and then join it with your source table.
but it will require some extra coding, either in your app or in PL
set-returning function
F.