Re: Strange DISTINCT !

Поиск
Список
Период
Сортировка
От Stephan Szabo
Тема Re: Strange DISTINCT !
Дата
Msg-id Pine.BSF.4.21.0108201004470.99110-100000@megazone23.bigpanda.com
обсуждение исходный текст
Ответ на Strange DISTINCT !  (Jean-Christophe Boggio <cat@thefreecat.org>)
Список pgsql-sql
On Mon, 20 Aug 2001, Jean-Christophe Boggio wrote:

> Hello, can someone explain to me why this query is so slow :
> 
> select distinct t.idmembre,p.datecrea
> from   tmp_stat t,prefs p
> where  p.idmembre=t.idmembre
> limit  5;
> 
> And this one is so fast :
> 
> select t.idmembre,p.datecrea
> from   (select distinct idmembre from tmp_stat) as t,
>        prefs p
> where  p.idmembre=t.idmembre
> limit 5;
>  
> (I currently have idmembre as an index on tmp_stat and prefs)

I'd suggest looking at the explain output for the two queries,
however, I believe the first query is likely to result in a sort
and unique step and the second is going to probably use the index
to distinct on tmp_stat.  I think that *possibly* if you used
select distrinct p.idmembre, p.datecrea and made an index on (idmembre,
datecrea) on prefs you could possibly see an improvement but I really
don't know.

In addition, these two queries may not do the same thing.  The first
will unique over both membre and datecrea whereas I think the second 
will not, so if you had two prefs rows with the same idmembre and 
datecrea, I believe the first will give one row and the second two.



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

Предыдущее
От: Raymond Chui
Дата:
Сообщение: How to execute a system file in procedure?
Следующее
От: "Ross J. Reedstrom"
Дата:
Сообщение: Re: Sequential select queries...??