[英]Update jsonb object in postgres
我的專欄之一是 jsonb 並且具有格式價值。 單行列的值如下。
{
"835": {
"cost": 0,
"name": "FACEBOOK_FB1_6JAN2020",
"email": "test.user@silverpush.co",
"views": 0,
"clicks": 0,
"impressions": 0,
"campaign_state": "paused",
"processed":"in_progress",
"modes":["obj1","obj2"]
},
"876": {
"cost": 0,
"name": "MARVEL_BLACK_WIDOW_4DEC2019",
"email": "test.user@silverpush.co",
"views": 0,
"clicks": 0,
"impressions": 0,
"campaign_state": "paused",
"processed":"in_progress",
"modes":["obj1","obj2"]
}
}
我想更新campaign_info(列名)列的內部鍵“已處理”和“模型”的campaign_id 是“876”。
我試過這個查詢:
update safe_vid_info
set campaign_info -> '835' --> 'processed'='completed'
where cid = 'kiywgh';
但它沒有用。
任何幫助表示贊賞。 謝謝。
這是你想要的嗎?
jsonb_set(campaign_info, '{876,processed}', '"completed"')
這將使用值'completed'
更新路徑"876" > "processed"
的值。
在您的更新查詢中:
update safe_vid_info
set campaign_info = jsonb_set(campaign_info, '{876,processed}', '"completed"')
where cid = 'kiywgh';
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.