Re: Optimizing DISTINCT with LIMIT - Mailing list pgsql-hackers

From Heikki Linnakangas
Subject Re: Optimizing DISTINCT with LIMIT
Date
Msg-id 4937E721.2050407@enterprisedb.com
Whole thread Raw
In response to Re: Optimizing DISTINCT with LIMIT  (Gregory Stark <stark@enterprisedb.com>)
Responses Re: Optimizing DISTINCT with LIMIT  (Gregory Stark <stark@enterprisedb.com>)
Re: Optimizing DISTINCT with LIMIT  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
Gregory Stark wrote:
> tmp <skrald@amossen.dk> writes:
> 
>>   If the input is "sufficiently" large and the LIMIT threshold "sufficiently"
>> small, maintain the DISTINCT output by hashning while traversing the input and
>> stop when the LIMIT threshold is reached. No sorting required and *at* *most*
>> one read of input.
> 
> You mean like this?
> 
> postgres=# explain select distinct x  from i limit 5;
>                             QUERY PLAN                             
> -------------------------------------------------------------------
>  Limit  (cost=54.50..54.51 rows=1 width=304)
>    ->  HashAggregate  (cost=54.50..54.51 rows=1 width=304)
>          ->  Seq Scan on i  (cost=0.00..52.00 rows=1000 width=304)
> (3 rows)

Does that know to stop scanning as soon as it has seen 5 distinct values?

--   Heikki Linnakangas  EnterpriseDB   http://www.enterprisedb.com


pgsql-hackers by date:

Previous
From: Gregory Stark
Date:
Subject: Re: Optimizing DISTINCT with LIMIT
Next
From: Gregory Stark
Date:
Subject: Re: Optimizing DISTINCT with LIMIT