From: | "Frank Millman" <frank(at)chagford(dot)com> |
---|---|
To: | <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: Joining 16 tables seems slow |
Date: | 2017-09-12 07:36:50 |
Message-ID: | 51E7FBA0D70B4EA3A84D771CD50C2428@FrankLaptop |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Pavel Stehule wrote:
>
> 2017-09-12 8:45 GMT+02:00 Frank Millman <frank(at)chagford(dot)com>:
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.
>
> please send result of explain analyze
>
> you can experimentally try increase FROM_COLLAPSE_LIMIT to some higher number 14 maybe 16
>
I tried increasing FROM_COLLAPSE_LIMIT, but it made no difference.
I have attached files containing my SQL command, and the results of EXPLAIN ANALYSE
Frank
Attachment | Content-Type | Size |
---|---|---|
pgsql_cmd.txt | text/plain | 3.5 KB |
pgsql_explain.txt | text/plain | 28.3 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Frank Millman | 2017-09-12 07:58:48 | Re: Joining 16 tables seems slow |
Previous Message | Ron Johnson | 2017-09-12 07:11:06 | Re: Joining 16 tables seems slow |