array_to_json(array_agg(row_to_json (r)))
не первый раз вижу такой конструкт, но не понимать зачем оно такое надо в таком переусложненном виде. Если нашли array_agg - значит могли заметить и json_agg там же, что приводит к простейшему select json_agg(r) from r
Для json оператора конкатенации нет, возьмите jsonb:
select jsonb_agg(r) || jsonb_build_object('city', 'SanAndreas') from tablename r;