Обсуждение: why can't 2 indexes be used at once?

Поиск
Список
Период
Сортировка

why can't 2 indexes be used at once?

От
Joseph Shraibman
Дата:
Lets say I have two columns, A and B.  They are each indexed seperately.
  If I do a query like:
SELECT * FROM table WHERE A = 1 AND B = 2;
postgres can only use one index.

I assume that postgres uses the index data to narrow down pages in the
table to visit when doing its search. Then it goes through and filters
on the second condition.

My question: why can't it go through the first index, get a list of
pages in the table, then go through the second index, union the result
with the results from first index, and then go into the table?

Re: why can't 2 indexes be used at once?

От
Tom Lane
Дата:
Joseph Shraibman <jks@selectacast.net> writes:
> My question: why can't it go through the first index, get a list of
> pages in the table, then go through the second index, union the result
> with the results from first index, and then go into the table?

See TODO list ...

            regards, tom lane