Re: Speeding up Aggregates - Mailing list pgsql-performance

From Rod Taylor
Subject Re: Speeding up Aggregates
Date
Msg-id 1065219028.91586.8.camel@jester
Whole thread Raw
In response to Re: Speeding up Aggregates  (Dror Matalon <dror@zapatec.com>)
Responses Re: Speeding up Aggregates  (Dror Matalon <dror@zapatec.com>)
Re: Speeding up Aggregates  (Greg Stark <gsstark@mit.edu>)
List pgsql-performance
On Fri, 2003-10-03 at 17:53, Dror Matalon wrote:
> On Fri, Oct 03, 2003 at 05:44:49PM -0400, Rod Taylor wrote:
> > > item_max_date() looks like this:
> > >    select max(dtstamp) from items where channel = $1 and link = $2;
> >
> > It is too bad the (channel, link) index doesn't have dtstamp at the end
> > of it, otherwise the below query would be a gain (might be a small one
> > anyway).
> >
> >   select dtstamp
> >     from items
> >    where channel = $1
> >      and link = $2
> > ORDER BY dtstamp DESC
> >    LIMIT 1;

It didn't make a difference even with the 3 term index? I guess you
don't have very many common values for channel / link combination.



How about the below? Note the word STABLE on the end.

CREATE or REPLACE FUNCTION item_max_date (int4, varchar) RETURNS
timestamptz AS '
select max(dtstamp) from items where channel = $1 and link = $2;
' LANGUAGE 'sql' STABLE;

Attachment

pgsql-performance by date:

Previous
From: Dror Matalon
Date:
Subject: Re: Speeding up Aggregates
Next
From: Neil Conway
Date:
Subject: Re: reindex/vacuum locking/performance?