La prima cosa che proverei è una sottoquery:
from ((select q.* from quanda q where q.id = :id1) union
(select q.* from quanda q where q.related = :id2)
) left join
. . .
Nota:questo vuole davvero indici su quanda(id)
e quanda(related)
per le prestazioni.
Se vengono selezionate poche righe, potrebbe essere molto più veloce.