PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Aggiunta (push) e rimozione da un array JSON in PostgreSQL 9.5+

Per aggiungere il valore, utilizzare l'operatore di aggiunta dell'array JSON (|| )

UPDATE jsontesting
SET jsondata = jsondata || '["newString"]'::jsonb
WHERE id = 7;

La rimozione del valore è simile a questa

UPDATE jsontesting
SET jsondata = jsondata - "newString"
WHERE id = 7; 

La concatenazione a un campo nidificato è simile a questa

UPDATE jsontesting
SET jsondata = jsonb_set(
  jsondata::jsonb,
  array['nestedfield'],
  (jsondata->'nestedfield')::jsonb || '["newString"]'::jsonb) 
WHERE id = 7;