Re: does "select count(*) from mytable" always do a seq

Поиск
Список
Период
Сортировка
От Pierre-Frédéric Caillaud
Тема Re: does "select count(*) from mytable" always do a seq
Дата
Msg-id opska7u2ixcq72hf@musicbox
обсуждение исходный текст
Ответ на Re: does "select count(*) from mytable" always do a seq  (Alex Turner <armtuk@gmail.com>)
Список pgsql-general
> (The example is really count(pkey) because count(*) is always going to
> do a seq scan I reckon - and could probably never use an index).

    postgres knows that count(*) is just "count the rows", you can use
count(1), it makes no difference...

>
> Alex Turner
> NetEconomist
>
>
> On Fri, 07 Jan 2005 11:17:32 -0700, Scott Ribe
> <scott_ribe@killerbytes.com> wrote:
>> > I guess what I"m really asking is why can't you run aggregates over
>> an index?
>>
>> It's got to do with MVCC and transaction consistency. Running count(*)
>> or an
>> aggregate function on an index could include records that should not be
>> visible to your current transaction.
>>
>> --
>> Scott Ribe
>> scott_ribe@killerbytes.com
>> http://www.killerbytes.com/
>> (303) 665-7007 voice
>>
>> ---------------------------(end of broadcast)---------------------------
>> TIP 8: explain analyze is your friend
>>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 8: explain analyze is your friend
>



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

Предыдущее
От: Pierre-Frédéric Caillaud
Дата:
Сообщение: Re: PYTHON, ODBC
Следующее
От: Jeff Davis
Дата:
Сообщение: general list