Re: SELECT DISTINCT

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Kevin Grittner" <kgrittn(at)mail(dot)com>
Cc: "salah jubeh" <s_jubeh(at)yahoo(dot)com>, "pgsql" <pgsql-general(at)postgresql(dot)org>
Subject: Re: SELECT DISTINCT
Date: 2013-01-18 01:02:44
Message-ID: 21678.1358470964@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

"Kevin Grittner" <kgrittn(at)mail(dot)com> writes:
> salah jubeh wrote:
>> I think any query that returns a unique column (primary key,
>> unique) which is not duplicated in some way (join) can use this
>> optimisation technique.

> I agree that if the planner searched for that, there would be cases
> where the DISTINCT keyword could be determined to be a noise word.
> The problem with that is that such searching in the planner would
> not be free -- doing it accurately would increase planning cost for
> every query which was legitimately using the feature.

There is actually infrastructure in the planner that could be used for
this, at least for the case where the query selects from just one base
table. I tend to agree though that adding such a check to every
DISTINCT query would be slowing everybody down to benefit only dubious
queries. It would be easier to swallow the overhead if there were a
solid case that reasonably-written queries might sometimes need the
optimization.

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Bartosz Dmytrak 2013-01-18 09:20:52 Functions not visible in pg_stat_user_functions view
Previous Message Kevin Grittner 2013-01-18 00:06:52 Re: SELECT DISTINCT