postgres not use index, IN statement

Поиск
Список
Период
Сортировка
От Anibal David Acosta
Тема postgres not use index, IN statement
Дата
Msg-id 006801cc1990$a8b34e10$fa19ea30$@devshock.com
обсуждение исходный текст
Ответы Re: postgres not use index, IN statement  (Craig Ringer <craig@postnewspapers.com.au>)
Список pgsql-performance
I have a strange situation.
I have a table of detail with millones of rows and a table of items with
thousands of rows

When I do..

select count(*) from wiz_application_response where application_item_id in
(select id from wiz_application_item where application_id=110)

This query NOT use the index on column application_item_id, instead is doing
a sequential scan

BUT, when I add the range of min and max id of the subquery, the postgres
uses the INDEX
This is the second query...

select count(*) from wiz_application_response where application_item_id
between 908 and 1030 and application_item_id in(select id from
wiz_application_item where application_id=110)

908 and 1030 are limits (lower and upper) of the subquery, the subquery
returns 100 elements aprox.

So, this is some bug?

Thanks!

Anibal



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

Предыдущее
От: Josh Berkus
Дата:
Сообщение: Re: Pushing LIMIT into sub-queries of a UNION ALL?
Следующее
От: John Rouillard
Дата:
Сообщение: "error with invalid page header" while vacuuming pgbench data