sql >> Database >  >> RDS >> PostgreSQL

Converteer objectarray naar array die compatibel is voor nodejs/pg/unnest

Je zou je JSON-string kunnen sturen zoals hij is, en PostgreSQL ermee laten omgaan:

update portfolios p
set votes = s.votes
from (
  select (e->>'votes')::int as votes, (e->>'id')::int as id
  from (select (regexp_replace($1, '"\1"', 'g'))::jsonb as jarr) j
  cross join jsonb_array_elements(jarr) e
  ) s
where p.id = s.id;

Waar $1 is [{votes: 5, id: 1}, {votes: 15, id: 1}, {votes: 25, id: 2}]', '([a-z]+) als een string.



  1. Hoe een verouderde Oracle Data Provider verwijderen?

  2. r sf::st_write gebruiken naar een niet-openbaar schema in PostgreSQL

  3. Foreign key-beperkingen tijdens het dumpen van gegevens

  4. Hoe MySQL-dump van host naar Docker-container te herstellen