UPDATE public.mytable SET jsonfieldname = jsonb_set( jsonfieldname, '{json_obj_key}', array_to_json( ARRAY( SELECT DISTINCT( UNNEST( ARRAY( SELECT json_array_elements_text( COALESCE( jsonfieldname::json->'json_obj_key', '[]' ) ) ) || ARRAY['Element to add'] ) ) ) )::jsonb ) WHERE id = 23 RETURNING *;