sql >> Databáze >  >> RDS >> PostgreSQL

aktualizace více klíčů postgres jsonb_set

dokumentace říká :

Takže pomocí vašich příkladů dat:

update table_name set
    data = data || '{"city": "ottawa", "phone": "phonenum", "prefix": "prefixedName"}'
    where number = 1;

Pokud navíc objekt, který chcete upravit, není na nejvyšší úrovni – stačí zkombinovat zřetězení a jsonb_set funkce. Pokud například původní data vypadají takto

{"location": {"name": "firstName", "city": "toronto", "province": "ON"}}

pak

...
data = jsonb_set(
    data, 
    '{location}', data->'location' || '{"city": "ottawa", "phone": "phonenum", "prefix": "prefixedName"}')
...


  1. Určete zemi z IP - IPv6

  2. Nejednoznačný odkaz na sloupec v INSERT ... PŘI KONFLIKTU PROVEĎTE AKTUALIZACI

  3. MySQL získat čas vložení starého záznamu?

  4. Top N na skupinu s více spojeními ke stolu