postgres=# select id, array_agg(fa) from (select id, (jsonb_array_elements(js)->'key') as fa from foo) g group by id order by id; id | array_agg ----+------------------------------ 1 | {"\"r1kval\"","\"r1kval2\""} 2 | {"\"r2kval\"","\"r2kval2\""} (2 rows)
I think the quotes are a fault of example data?
The quotes are the fault of the query author choosing the "->" operator instead of "->>".