sql >> Database >  >> RDS >> PostgreSQL

postgres jsonb_set meerdere sleutels bijwerken

De documentatie zegt :

Dus met behulp van uw voorbeeldgegevens:

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

Bovendien, als het object dat u wilt bewerken zich niet op het hoogste niveau bevindt - combineer gewoon de aaneenschakeling en jsonb_set functie. Als de originele gegevens er bijvoorbeeld uitzien als

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

dan

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


  1. Laravel lees- en schrijfverbinding niet synchroon

  2. Asynchrone replicatie instellen tussen MariaDB Galera-clusters

  3. De resultaten van een query e-mailen in SQL Server (T-SQL)

  4. Updates voor PostgreSQL-testtools met benchmarkarchief