Strange Slow query - Mailing list pgsql-general

From veramente@libero.it
Subject Strange Slow query
Date
Msg-id HSVEVL$BAF19303921D8A9C1C516CA8AAB3E5DC@libero.it
Whole thread Raw
Responses Re: Strange Slow query
Re: Strange Slow query
List pgsql-general
Hello all,

I have the following query that has a problem i cannot resolve:

SELECT puzzle_picking.*, tmagaztestate.mconto, tanagraficagen.araso, tmagaztestate.mdabol, tcausalimagaz.tdescr
FROM tcausalimagaz RIGHT JOIN (tanagraficagen RIGHT JOIN (tmagazrighe LEFT JOIN tmagaztestate ON (tmagazrighe.mnubol =
tmagaztestate.mnubol)AND (tmagazrighe.mspecie = tmagaztestate.mspecie) AND (tmagazrighe.manno = tmagaztestate.manno)
AND(tmagazrighe.mtiprk = tmagaztestate.mtiprk)) RIGHT JOIN puzzle_picking ON (tmagazrighe.mriga =
puzzle_picking.pkriga)AND (tmagazrighe.mnubol = puzzle_picking.pknumbol) AND (tmagazrighe.mspecie =
puzzle_picking.pkspecie)AND (tmagazrighe.manno = puzzle_picking.pkanno) ON tanagraficagen.aconto =
tmagaztestate.mconto)ON tcausalimagaz.tcod = tmagazrighe.mcaus 
WHERE (((puzzle_picking.pkartcode)='5320009'))
ORDER BY puzzle_picking.pkdate;

Basically it is very slow (20 secs to perform ), but if i change the right join of tanagraficagen to an inner join it
isinstant (< than a second). My question is: 

Is it possible that a right join performs that much slower .. ? i mean i can undertsand it takes more time .. but 20
secis far too much .. 

What can i do to speed it up?? Keep in mind that i have indexes on all of the joined columns and on the column in the
whereclause .. 

Thank you very much,

Fabrizio Mazzoni
Macron Srl


pgsql-general by date:

Previous
From: Bruno Wolff III
Date:
Subject: Re: Analyze not doing anything?
Next
From: Joe Lester
Date:
Subject: Re: Increasing Max Connections Mac OS 10.3