| 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: | Whole Thread | Raw Message | 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
| 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 ???? |