Re: Query optimization path

Поиск
Список
Период
Сортировка
От Bruno Wolff III
Тема Re: Query optimization path
Дата
Msg-id 20030112170108.GB31080@wolff.to
обсуждение исходный текст
Ответ на Query optimization path  ("Gaetano Mendola" <mendola@bigfoot.com>)
Список pgsql-admin
On Sun, Jan 12, 2003 at 17:31:34 +0100,
  Gaetano Mendola <mendola@bigfoot.com> wrote:
> Hi all,
>
> I have the following query:
>
> SELECT count(1)
> FROM providers p JOIN class_default cd    USING (id_provider)
>                  JOIN user_data     ud    USING (id_class)
>                  JOIN v_user_traffic ut   USING (id_user)
> WHERE id_user_status in (4,5) AND
>       p.company = 'XXXXX';
>
> is not slow but I notice that if I do explain analyze with the table
> reordered
> inside the select in another way the cost change.

Using "JOIN" fixes the order that tables are joined in. If you are
just doing inner joins, then you probably don't want to use the "JOIN"
keyword. The exception being when there are so many tables being joined
that you want to manually specify at least some of the join ordering in
order to help out the planner.

Outer (and left and right) joins are generally not associative, so the
"JOIN" keyword being required for those cases isn't generally going to
be a problem.

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

Предыдущее
От: Peter Eisentraut
Дата:
Сообщение: Re: crypto?
Следующее
От: "Gaetano Mendola"
Дата:
Сообщение: Re: Query optimization path