| From: | Bruno Wolff III <bruno(at)wolff(dot)to> |
|---|---|
| To: | Ruslan A Dautkhanov <rusland(at)scn(dot)ru> |
| Cc: | pgsql-bugs(at)postgresql(dot)org |
| Subject: | Re: performance for MIN,MAX aggregates |
| Date: | 2003-03-11 11:38:55 |
| Message-ID: | 20030311113855.GA2334@wolff.to |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-bugs |
On Tue, Mar 11, 2003 at 15:42:41 +0700,
Ruslan A Dautkhanov <rusland(at)scn(dot)ru> wrote:
> Hello all,
>
> Just a little simple example:
>
> isbs=# \d radauth
> Table "public.radauth"
> Column | Type | Modifiers
> ----------+-----------------------------+-----------
> dttm | timestamp(0) with time zone |
> username | text |
> realm | text |
> logline | text |
> Indexes: radauth_dttm_username btree (dttm, username)
>
> isbs=# explain select min(dttm) from radauth;
> QUERY PLAN
> --------------------------------------------------------------------
> Aggregate (cost=2591.75..2591.75 rows=1 width=8)
> -> Seq Scan on radauth (cost=0.00..2363.00 rows=91500 width=8)
> (2 rows)
This is discussed a lot in the archives. The short answer is use the
following query instead:
select dttm from radauth order by dttm limit 1;
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Josh Berkus | 2003-03-12 04:57:29 | Aliased SubSelect in HAVING clause bug -- in progress? |
| Previous Message | Ruslan A Dautkhanov | 2003-03-11 08:42:41 | performance for MIN,MAX aggregates |