Re: Difference between PRIMARY KEY index and UNIQUE-NOT NULL index

Поиск
Список
Период
Сортировка
От Josh Tolley
Тема Re: Difference between PRIMARY KEY index and UNIQUE-NOT NULL index
Дата
Msg-id e7e0a2570707202232q7f47d8deie8c33e20bdad224a@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Difference between PRIMARY KEY index and UNIQUE-NOT NULL index  (Michael Glaesemann <grzm@seespotcode.net>)
Ответы Re: Difference between PRIMARY KEY index and UNIQUE-NOT NULL index  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-general
On 7/20/07, Michael Glaesemann <grzm@seespotcode.net> wrote:
>
> On Jul 20, 2007, at 17:54 , Vincenzo Romano wrote:
>
> > In an inner join involving a 16M+ rows table and a 100+ rows table
> > performances got drastically improved by 100+ times by replacing a
> > UNIQUE-NOT NULL index with a PRIMARY KEY on the very same columns in
> > the very same order. The query has not been modified.
>
> There should be no difference in query performance, AIUI.

If I read the documentation correctly, PRIMARY KEY is simply syntactic
sugar equivalent to UNIQUE + NOT NULL, the only difference being that
a PRIMARY KEY is reported as such to someone looking at the table
structure, which becomes more intuitive than seeing UNIQUE + NOT NULL.

>
> > In the older case, thanks to the EXPLAIN command, I saw that the join
> > was causing a sort on the index elements, while the primary key was
> > not.
>

Might it just be that the original UNIQUE + NOT NULL index was bloated
or otherwise degraded, and reindexing it would have resulted in the
same performance gain? That's just a guess.

-Josh

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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: query optimizer
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Difference between PRIMARY KEY index and UNIQUE-NOT NULL index