Re: Select max(foo) and select count(*) optimization

Поиск
Список
Период
Сортировка
От Robert Treat
Тема Re: Select max(foo) and select count(*) optimization
Дата
Msg-id 1073405003.20751.2.camel@camel
обсуждение исходный текст
Ответ на Re: Select max(foo) and select count(*) optimization  (Shridhar Daithankar <shridhar_daithankar@persistent.co.in>)
Ответы Re: Select max(foo) and select count(*) optimization  (Shridhar Daithankar <shridhar_daithankar@persistent.co.in>)
Список pgsql-performance
On Tue, 2004-01-06 at 07:20, Shridhar Daithankar wrote:
> On Tuesday 06 January 2004 17:48, D'Arcy J.M. Cain wrote:
> > On January 6, 2004 01:42 am, Shridhar Daithankar wrote:
> > cert=# select relpages,reltuples::bigint from pg_class where relname=
> > 'certificate';
> >  relpages | reltuples
> > ----------+-----------
> >    399070 |  24858736
> > (1 row)
> >
> > But:
> >
> > cert=# select count(*) from certificate;
> > [*Crunch* *Crunch* *Crunch*]
> >   count
> > ----------
> >  19684668
> > (1 row)
> >
> > Am I missing something?  Max certificate_id is 20569544 btw.
>
> Do 'vacuum analyze certificate' and try..:-)
>
> The numbers from pg_class are estimates updated by vacuum /analyze. Of course
> you need to run vacuum frequent enough for that statistics to be updated all
> the time or run autovacuum daemon..
>
> Ran into same problem on my machine till I remembered about vacuum..:-)
>

Actually you only need to run analyze to update the statistics.

Robert Treat
--
Build A Brighter Lamp :: Linux Apache {middleware} PostgreSQL


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

Предыдущее
От: Clive Page
Дата:
Сообщение: Inefficient SELECT with OFFSET and LIMIT
Следующее
От: Shridhar Daithankar
Дата:
Сообщение: Re: Select max(foo) and select count(*) optimization