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

Anexando (enviando) e removendo de um array JSON no PostgreSQL 9.5+


Para adicionar o valor, use o operador de acréscimo de matriz JSON (|| )
UPDATE jsontesting
SET jsondata = jsondata || '["newString"]'::jsonb
WHERE id = 7;

A remoção do valor fica assim
UPDATE jsontesting
SET jsondata = jsondata - "newString"
WHERE id = 7; 

A concatenação para um campo aninhado se parece com isso
UPDATE jsontesting
SET jsondata = jsonb_set(
  jsondata::jsonb,
  array['nestedfield'],
  (jsondata->'nestedfield')::jsonb || '["newString"]'::jsonb) 
WHERE id = 7;