2017-06-06 43 views

回答

0

如果連擊2 jsonb值,你實現你想要什麼,例如:

select '{"a": 1, "b": 2}'::jsonb || '{"b": 10, "c": 20}'::jsonb 

生產:"{"a": 1, "b": 10, "c": 20}"

如果兩個操作數都是有一個共同的鍵字段名稱的對象,價值結果中的字段將只是右手操作數的值。

https://www.postgresql.org/docs/current/static/functions-json.html

+0

感謝做到這一點!我將如何去插入新的jsonb對象,使舊的和新的連接在一起? – user7807740

+0

如果你需要更新現有的jsonb值,那麼你可以這樣做:'uptade table_name set col = col || '{「b」:10,「c」:20}':: jsonb其中id =?' –

1

如果你想要一個 「更新插入」,你可以用insert ... on conflict...

insert into the_table (id, json_column) 
values (1, '{"b": 10, "c": 20}'::jsonb) 
on conflict (id) do update 
    set json_column = json_column || excluded.json_column; 
相關問題