Re: Weird query speed
| От | Tom Lane |
|---|---|
| Тема | Re: Weird query speed |
| Дата | |
| Msg-id | 22803.1074184846@sss.pgh.pa.us обсуждение исходный текст |
| Ответ на | Weird query speed ("Rigmor Ukuhe" <rigmor.ukuhe@finestmedia.com>) |
| Список | pgsql-performance |
"Rigmor Ukuhe" <rigmor.ukuhe@finestmedia.com> writes:
> query: select "NP_ID" from a WHERE "NP_ID" > '0' [is slow]
>
> query: select "NP_ID" from a WHERE "NP_ID" > '1' [is fast]
>
> There are about 37K rows and only about 100 of then are not "NP_ID" = 0
Yeah, it's scanning over all the zero values when you say "> 0" :-(
This is fixed for 7.5:
2003-12-20 20:23 tgl
* src/: backend/access/nbtree/nbtinsert.c,
backend/access/nbtree/nbtpage.c, backend/access/nbtree/nbtsearch.c,
include/access/nbtree.h: Improve btree's
initial-positioning-strategy code so that we never need to step
more than one entry after descending the search tree to arrive at
the correct place to start the scan. This can improve the behavior
substantially when there are many entries equal to the chosen
boundary value. Per suggestion from Dmitry Tkach, 14-Jul-03.
regards, tom lane
В списке pgsql-performance по дате отправления: