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

Поиск
Список
Период
Сортировка
От Tim Landscheidt
Тема Re: Is it possible to make the order of output the same as the order of input parameters?
Дата
Msg-id m3vda1tp99.fsf@passepartout.tim-landscheidt.de
обсуждение исходный текст
Ответ на 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?  (Stephen Frost <sfrost@snowman.net>)
Список pgsql-general
Sam Mason <sam@samason.me.uk> wrote:

>> >   SELECT c.*
>> >   FROM customer c, (
>> >     SELECT *, row_number() OVER ()
>> >     FROM (VALUES (23), (56), (2), (12), (10)) x) x(val,ord)
>> >   WHERE c.id = x.val
>> >   ORDER BY x.ord;

>> Wow, that's really cool and a nice case for row_number().

> Just thinking about it now; do SQL's semantics say it'll always do
> the right thing?  PG does in a couple of quick tests (i.e. one where
> customer is a small table and PG prefers a seqscan and where it's larger
> and prefers an index scan) but I'm not sure if this could change.

PostgreSQL's documentation on VALUES has at least no guaran-
tee of the order of data. I'd prefer David's solution :-).

Tim

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

Предыдущее
От: Richard Broersma
Дата:
Сообщение: Re: [NOVICE] sum multiple tables gives wrong answer?
Следующее
От: Peter Geoghegan
Дата:
Сообщение: Re: server-side extension in c++