On Mon, Dec 12, 2005 at 18:35:07 +0100,
Pavel Stehule <pavel(dot)stehule(at)hotmail(dot)com> wrote:
> Hello
>
> I did some test and I can see so DISTINCT works well on indexed columns,
> but is slow on derived tables without indexes. If I use without distinct
> group by I get much better times.
>
> SELECT DISTINCT a, b FROM tab
> SELECT a,b FROM tab GROUP BY a, b.
>
> Can You Explain it.
DISTINCT will require a sort step to remove duplicates. GROUP BY can use
either a sort or hash aggregate plan. If there are few distinct values,
the hash aggregate plan can be much faster.