Unexpected sort order.
| От | Ron Mayer |
|---|---|
| Тема | Unexpected sort order. |
| Дата | |
| Msg-id | ekfin7$2usr$1@news.hub.org обсуждение исходный текст |
| Ответы |
Re: Unexpected sort order.
|
| Список | pgsql-general |
Shouldn't the results of this query shown here been sorted by "b" rather than by "a"? I would have thought since "order by b" is in the outer sql statement it would have been the one the final result gets ordered by. li=# select * from (select (random()*10)::int as a, (random()*10)::int as b from generate_series(1,10) order by a) as x orderby b; a | b ---+---- 0 | 8 1 | 10 3 | 4 4 | 8 5 | 1 5 | 9 6 | 4 6 | 5 8 | 4 9 | 0 (10 rows) Changing the constant from 10 to 11 in either but not both of the places produces results I would have expected; as do many other ways of rewriting the query. Unless I'm missing something, it seems the way I wrote the query creates some confusion of which of the two similar expressions with random() it's sorting by.
В списке pgsql-general по дате отправления: