Lists: | pgsql-ru-general |
---|
From: | wDevil wDevil <wwdevil(at)gmail(dot)com> |
---|---|
To: | pgsql-ru-general(at)postgresql(dot)org |
Subject: | where in(...) order by field in(...) desc. Сортировка не применяется |
Date: | 2010-05-14 09:56:01 |
Message-ID: | AANLkTinieTTg2PFDlCqkDRRM308GtXlJrIMzp8ROchZU@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-ru-general |
Всем привет.
Такой вопрос, почему два запроса выдают одинаково отсортированный список:
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;
т.е сортировка не применяется.
From: | dns <davildes(at)mail(dot)ru> |
---|---|
To: | "wDevil wDevil" <wwdevil(at)gmail(dot)com>, pgsql-ru-general(at)postgresql(dot)org |
Subject: | Re: [pgsql-ru-general] where in(...) order by field in(...) desc. Сортировка не применяется |
Date: | 2010-05-14 10:02:48 |
Message-ID: | op.vcowuzh4uhv2xj@dns |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-ru-general |
On Fri, 14 May 2010 13:56:01 +0400, wDevil wDevil <wwdevil(at)gmail(dot)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
From: | silly sad <sad(at)bankir(dot)ru> |
---|---|
To: | pgsql-ru-general(at)postgresql(dot)org |
Subject: | Re: [pgsql-ru-general] where in(...) order by field in(...) desc. Сортировка не применяется |
Date: | 2010-05-14 10:25:35 |
Message-ID: | 4BED251F.3070902@bankir.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-ru-general |
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
From: | Alexey Klyukin <alexk(at)waki(dot)ru> |
---|---|
To: | wDevil wDevil <wwdevil(at)gmail(dot)com> |
Cc: | pgsql-ru-general(at)postgresql(dot)org |
Subject: | Re: [pgsql-ru-general] where in(...) order by field in(...) desc. Сортировка не применяется |
Date: | 2010-05-14 10:34:02 |
Message-ID: | AANLkTim1lmXhTBn8yyJRMWIcYwCFSsFmIYyiDinslKwN@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-ru-general |
2010/5/14 wDevil wDevil <wwdevil(at)gmail(dot)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