更新多个jsonb值

我试图创build一个cron运行每个月更新一些jsonb字段的键,在ndoe应用程序与postgres数据库。

在我的数据库中,我有一个像“disk_alert”,“temepratures_alert”,“consumptions_alert”键的jsonb字段,我想做一些像

Postgres的:

UPDATE devices SET data=jsonb_set(data::jsonb,'{disk_alert}','false'::jsonb,true), modified_date=NOW() WHERE id=$1 AND NOT deleted; 

节点:

 client.query("UPDATE devices SET data=jsonb_set(data::jsonb,'{disk_alert}','false'::jsonb,true), modified_date=NOW() WHERE id=$1 AND NOT deleted", [deviceId] 

但如何添加其他键“consumptions_alert”和“temperatures_alert”? 我读了一些关于使用cocnatenation ||的内容 运营商,但如何做到这一点?

你可以像这样使用连接操作符:

 UPDATE devices SET data = data::jsonb || '{"disk_alert": false, "temepratures_alert": false}', modified_date = NOW() WHERE id=$1 AND NOT deleted;