Re: What does "merge-joinable join conditions" mean ????

From: "Dean Gibson (DB Administrator)" <postgresql4(at)ultimeth(dot)com>
To: pgsql-sql <pgsql-sql(at)postgresql(dot)org>
Subject: Re: What does "merge-joinable join conditions" mean ????
Date: 2006-01-15 23:47:56
Message-ID: 43CADF2C.7010100@ultimeth.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

On 2006-01-15 15:42, Tom Lane wrote:
>
>> EXPLAIN SELECT count(*) FROM "Extra" FULL JOIN "GeoRestrict" ON
>> callsign ~ pattern WHERE geo_region =
>> 4;
>>
>
> Oh, but that reduces it to a left join, as you can see in the EXPLAIN
> output ---
Yes, I previously noticed that in the EXPLAIN output too.

> any null-extension rows from the right side are going to fail
> the WHERE condition anyway, so the planner simplifies the FULL JOIN to a
> LEFT JOIN. If you'd eliminate the WHERE altogether then the failure
> will come back.
>
>
Tried that, and you are right there as well.

So, given the fact that the right-hand-table is only about 15 rows, do
you think changing the SELECT back to a LEFT JOIN, and then using a
UNION to get the extra right-hand-rows in, is the best work-around?

-- Dean

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Tom Lane 2006-01-16 00:10:18 Re: What does "merge-joinable join conditions" mean ????
Previous Message Dean Gibson (DB Administrator) 2006-01-15 23:31:40 Re: What does "merge-joinable join conditions" mean ????