Why count(*) doest use index?

Поиск
Список
Период
Сортировка
От
Тема Why count(*) doest use index?
Дата
Msg-id f2c79335414803f3993cb45b434134be@e1.ru
обсуждение исходный текст
Ответы Re: Why count(*) doest use index?  (Adrian Klaver <adrian.klaver@gmail.com>)
Re: Why count(*) doest use index?  (Raymond O'Donnell <rod@iol.ie>)
Список pgsql-general

I use pgsql 9.0.3 and I know that postgresql tries to use the fields in indexes instead of the original table if it possible

 

But when I run

SELECT COUNT(id) FROM tab

or

SELECT COUNT(*) FROM tab

where there "id" is PRIMARY KEY and there are other indexes there I get execution plan that doesnt use any indexes, but sequentab scanning the original table.

   "Aggregate  (cost=38685.98..38685.99 rows=1 width=0)"
   "  ->  Seq Scan on tab  (cost=0.00..36372.38 rows=925438 width=0)"

Why is it so?

 

---

Paul

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

Предыдущее
От: Rob Sargent
Дата:
Сообщение: closing connection more expensive than opening connection?
Следующее
От: Derrick Rice
Дата:
Сообщение: Tracking table modifications / table stats