È possibile utilizzare ad es. un join sinistro e alcune delle funzioni di formattazione delle stringhe:
select ... as parent, ' -- ' || coalesce(..., '') as child
from ... left join ... on ...
Potresti anche unire cose, ecc. per ottenere esattamente ciò che hai richiesto.
MA dovresti davvero lasciarlo alla vista, come già suggerito.