Re: Seqscan in MAX(index_column)

Поиск
Список
Период
Сортировка
От Bruce Momjian
Тема Re: Seqscan in MAX(index_column)
Дата
Msg-id 200309041719.h84HJwa28484@candle.pha.pa.us
обсуждение исходный текст
Ответ на Re: Seqscan in MAX(index_column)  (Greg Stark <gsstark@mit.edu>)
Ответы Re: Seqscan in MAX(index_column)  (Andreas Pflug <pgadmin@pse-consulting.de>)
Re: Seqscan in MAX(index_column)  (Greg Stark <gsstark@mit.edu>)
Список pgsql-hackers
Greg Stark wrote:
> It has nothing to do with MVCC. It has to do with implementing this is hard in
> the general case.
> 
> Think of examples like:
> 
> select max(foo) group by bar;
> 
> or
> 
> select max(foo) where xyz = z;
> 
> To do it properly max/min have to be special-cased and tightly integrated with
> other code to handle index scans and aggregates. As it currently stands
> they're implemented the same way as any other aggregate, which means they get
> to see all the records in the grouping.
> 
> This is a frequently asked question, I'm surprised you didn't find stuff
> searching with google. There have been numerous long discussions on this topic
> not long ago. People are still trying to think about how to handle this
> better.

The FAQ does have the example of using ORDER BY LIMIT 1 for MAX().  What
we don't have a workaround for is COUNT(*).  I think that will require
some cached value that obeys MVCC rules of visibility.

--  Bruce Momjian                        |  http://candle.pha.pa.us pgman@candle.pha.pa.us               |  (610)
359-1001+  If your life is a hard drive,     |  13 Roberts Road +  Christ can be your backup.        |  Newtown Square,
Pennsylvania19073
 


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

Предыдущее
От: Peter Eisentraut
Дата:
Сообщение: Re: Win32 native port
Следующее
От: Tom Lane
Дата:
Сообщение: Re: TCP/IP with 7.4 beta2 broken?