From: | Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com> |
---|---|
To: | Frank Millman <frank(at)chagford(dot)com> |
Cc: | "pgsql-general(at)postgresql(dot)org >> PG-General Mailing List" <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: Joining 16 tables seems slow |
Date: | 2017-09-12 06:53:12 |
Message-ID: | CAFj8pRBxZB3VXWFboG+vYYYBGERAvbJogsiC_U2tbpLN2pfDQg@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
hi
2017-09-12 8:45 GMT+02:00 Frank Millman <frank(at)chagford(dot)com>:
> Hi all
>
> I am using 9.4.4 on Fedora 22.
>
> I am experimenting with optimising a SQL statement. One version uses 4
> LEFT JOIN’s and a 5-way CASE statement in the body. The second moves the
> filtering into the JOIN section, and I end up with 16 LEFT JOIN’s and no
> CASE statements.
>
> My test involves selecting a single row. Both versions work. The first
> version takes 0.06 seconds. The second takes 0.23 seconds. On further
> experimentation, the time for the second one seems to taken in setting up
> the joins, because if I omit selecting anything from the joined tables, it
> still takes 0.23 seconds.
>
> Exactly the same exercise on Sql Server results in 0.06 seconds for both
> versions.
>
> I realise that, if I was selecting a large number of rows, 0.23 seconds is
> trivial and the overall result could be different. But still, it seems odd.
>
> Is this normal, or should I investigate further?
>
please send result of explain analyze
you can experimentally try increase FROM_COLLAPSE_LIMIT to some higher
number 14 maybe 16
regards
>
> Frank Millman
>
>
From | Date | Subject | |
---|---|---|---|
Next Message | Ron Johnson | 2017-09-12 07:11:06 | Re: Joining 16 tables seems slow |
Previous Message | Frank Millman | 2017-09-12 06:45:58 | Joining 16 tables seems slow |