PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

PostgreSQL - Adicione chave a cada objeto de um array JSONB


A abordagem com jsonb_array_elements e jsonb_set era a ideia certa, mas de alguma forma você os aninhou da maneira errada:
UPDATE myTable SET myColumn = jsonb_set(myColumn, '{A}', (
  SELECT jsonb_agg( element || '{"myArray":[]}' )
  FROM jsonb_array_elements(myColumn -> 'A') element
));



Btw se sua coluna já tiver jsonb tipo de dados, você não deve precisar de nenhuma conversão.