Thread: where in(...) order by field in(...) desc. Сортировка не применяется
Всем привет.
Такой вопрос, почему два запроса выдают одинаково отсортированный список:
SELECT name
FROM firm
WHERE id IN(20436598,19294320)
ORDER BY id IN(20436598,19294320) ASC;
SELECT name
FROM firm
WHERE id IN(20436598,19294320)
ORDER BY id IN(20436598,19294320) DESC;
т.е сортировка не применяется.
Re: [pgsql-ru-general] where in(...) order by field in(...) desc. Сортировка не применяется
From
dns
Date:
On Fri, 14 May 2010 13:56:01 +0400, wDevil wDevil <wwdevil@gmail.com> wrote: > Всем привет. > > Такой вопрос, почему два запроса выдают одинаково отсортированный список: > SELECT name > FROM firm > WHERE id IN(20436598,19294320) > ORDER BY id IN(20436598,19294320) ASC; > > SELECT name > FROM firm > WHERE id IN(20436598,19294320) > ORDER BY id IN(20436598,19294320) DESC; > > т.е сортировка не применяется. Элементарно. По тому, что по всем строкам в order by получается true, а соответственно и критерии для сортировки у всех строк одинаковые. -- Best regards
Re: [pgsql-ru-general] where in(...) order by field in(...) desc. Сортировка не применяется
From
silly sad
Date:
On 05/14/10 13:56, wDevil wDevil wrote: > Всем привет. > > Такой вопрос, почему два запроса выдают одинаково отсортированный список: > SELECT name > FROM firm > WHERE id IN(20436598,19294320) > ORDER BY id IN(20436598,19294320) ASC; > > SELECT name > FROM firm > WHERE id IN(20436598,19294320) > ORDER BY id IN(20436598,19294320) DESC; > > т.е сортировка не применяется. потому что copy-past
Re: [pgsql-ru-general] where in(...) order by field in(...) desc. Сортировка не применяется
From
Alexey Klyukin
Date:
2010/5/14 wDevil wDevil <wwdevil@gmail.com>: > Всем привет. > Такой вопрос, почему два запроса выдают одинаково отсортированный список: > SELECT name > FROM firm > WHERE id IN(20436598,19294320) > ORDER BY id IN(20436598,19294320) ASC; > SELECT name > FROM firm > WHERE id IN(20436598,19294320) > ORDER BY id IN(20436598,19294320) DESC; > т.е сортировка не применяется. ORDER BY записан неверно, WHERE уже гарантирует, что ORDER BY упорядочит только выбранные WHERE значения. ORDER BY id [ASC|DESC] сработает корректно, -- Alexey Klyukin wwww.commandprompt.com The PostgreSQL Company - Command Prompt, Inc