我一直在嘗試更新 postgre sql 中的 jsonb 欄位。我嘗試了下面的命令,但它沒有用,也沒有給出任何錯誤。盡管命令似乎成功了,但該欄位沒有任何變化。我如何更新 jsonb 欄位。
我執行的命令:
UPDATE "MddPublisher" SET "CountriesAndGamesAppStore" = jsonb_set("CountriesAndGamesAppStore" , '{"AX"}', '["test"]');
注意:我嘗試更新的行中的值為空。
注意:該命令正在處理已填充的行,但不適用于空行。
jsonb 欄位的結構:
{"AD": ["Hello"], "AF": ["Hello"], "AL": ["Hello"], "AS": ["Hello"], "AX": ["Hello"], "DZ": ["Hello"]}
uj5u.com熱心網友回復:
您可以使用coalesce函式,此函式檢查每個引數是否具有值,直到引數不為空
coalesce("CountriesAndGamesAppStore", '{}'::jsonb)
此函式檢查您的第一個引數是否為空,如果第一個引數為空,則使用第二個引數
UPDATE "MddPublisher" SET
"CountriesAndGamesAppStore" = jsonb_set(coalesce("CountriesAndGamesAppStore", '{}'::jsonb) , '{"AX"}', '["test"]');
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/321569.html
標籤:Python PostgreSQL
