První věc, kterou bych zkusil, je poddotaz:
from ((select q.* from quanda q where q.id = :id1) union
(select q.* from quanda q where q.related = :id2)
) left join
. . .
Poznámka:Toto opravdu chce indexy na quanda(id)
a quanda(related)
pro výkon.
Pokud je vybráno málo řádků, může to být mnohem rychlejší.