Re: Is it possible to make the order of output the same as the order of input parameters?

Поиск
Список
Период
Сортировка
От Stephen Frost
Тема Re: Is it possible to make the order of output the same as the order of input parameters?
Дата
Msg-id 20100602114336.GC21875@tamriel.snowman.net
обсуждение исходный текст
Ответ на Is it possible to make the order of output the same as the order of input parameters?  ("m. hvostinski" <makhvost@gmail.com>)
Ответы Re: Is it possible to make the order of output the same as the order of input parameters?  ("A. Kretschmer" <andreas.kretschmer@schollglas.com>)
Re: Is it possible to make the order of output the same as the order of input parameters?  ("m. hvostinski" <makhvost@gmail.com>)
Список pgsql-general
* m. hvostinski (makhvost@gmail.com) wrote:
> I have a simple query like:
>
> SELECT * FROM customer WHERE id IN (23, 56, 2, 12, 10)
>
> The problem is that I need to retrieve the rows in the same order as the set
> of ids provided in the select statement. Can it be done?

Not very easily.  My first thought would be doing something like:

SELECT
  customer.*
FROM
  customer a
  JOIN (VALUES (1,23),(2,56),(3,2),(4,12),(5,10)) b
    ON (a.id = b.column2)
ORDER BY b.column1
;

    Thanks,

        Stephen

Вложения

В списке pgsql-general по дате отправления:

Предыдущее
От: Stephen Frost
Дата:
Сообщение: Re: Out of Memory and Configuration Problems (Big Computer)
Следующее
От: Sam Mason
Дата:
Сообщение: Re: Is it possible to make the order of output the same as the order of input parameters?