Как сгруппировать записи в Postgres?
Во-первых, вам не нужен union, используйте join. Во-вторых, группировка делается с помощью group by. Для получения массива сгруппированных значений используйте агрегатную функцию array_agg().select
  t1.name, array_agg(t2.skills)
from table1 as t1
inner join table2 as t2
  using (id)
group by t1.name;sqlfidle
используйте функцию array_agg, например:SELECT table1 .id, table1 .name, array_agg(table2.skills)
FROM table1 
LEFT JOIN table2 ON table2.id = table1.id
GROUP BY table1.id