Re: [planner] Ignore "order by" in subselect if parrent do count(*)

Поиск
Список
Период
Сортировка
От Szymon Guz
Тема Re: [planner] Ignore "order by" in subselect if parrent do count(*)
Дата
Msg-id CAFjNrYvECD+kDVfo76s8zHsfb0E0G7CkGH2boyHT7rgpkFBS7Q@mail.gmail.com
обсуждение исходный текст
Ответ на [planner] Ignore "order by" in subselect if parrent do count(*)  (Marcin Mirosław <marcin@mejor.pl>)
Ответы Re: [planner] Ignore "order by" in subselect if parrent do count(*)  (Marcin Mirosław <marcin@mejor.pl>)
Список pgsql-performance


On 1 March 2012 12:45, Marcin Mirosław <marcin@mejor.pl> wrote:
Hello,
my example query (and explain) is:
$ explain SELECT count(*) from (select * from users_profile order by id)
u_p;
                               QUERY PLAN
---------------------------------------------------------------------------
 Aggregate  (cost=1.06..1.07 rows=1 width=0)
  ->  Sort  (cost=1.03..1.03 rows=2 width=572)
        Sort Key: users_profile.id
        ->  Seq Scan on users_profile  (cost=0.00..1.02 rows=2 width=572)
(4 rows)

Meseems "order by id" can be ignored by planner. It should speed up
query without side effect. I know the query should be fixed but this is
real and simplified query from real application.
Does postgresql team think ppostgres should be smarter than user and fix
user queries? If answer is positive please treat this as "feature request".
Thank you and regards,
Marcin.


If you have only 2 rows in the table, then the plan really doesn't matter too much. Sorting two rows would be really fast :)

Try to check it with 10k rows.

regards
Szymon

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

Предыдущее
От: Marcin Mirosław
Дата:
Сообщение: [planner] Ignore "order by" in subselect if parrent do count(*)
Следующее
От: Marcin Mirosław
Дата:
Сообщение: Re: [planner] Ignore "order by" in subselect if parrent do count(*)