Um novo recurso no PostgreSQL 9.2 mas não testei a consulta:
Eu sigo o tutorial aqui .
select row_to_json(t)
from (
select ParentTable.parentTableFirstProp, (
select array_to_json(array_agg(row_to_json(child)))
from (
select childTableFirstProp
from ChildTable
where ChildTable.id=ParentTable.parentToChildReference
) child
) as parentToChildReference
from ParentTable
) t