MongoDB:可以合并两个更新请求

MongoDB: Merge of two update requests possible?

本文关键字:两个 更新 请求 合并 MongoDB      更新时间:2023-09-26

如果我想取消设置一个值并设置另一个值,我必须进行两次更新吗?或者可以将两者合并在一起吗?

Collection.update(
    { _id: id },
    { $unset: { 'status.editing': '' } }
);
Collection.update(
    { _id: id },
    { $set: { 'status.version': timestamp } }
);

怎么样

Collection.update(
    { _id: id },
    { 
        $unset: { 'status.editing': '' },
        $set: { 'status.version': timestamp }
    }
);

查看$unset和$set

也可以使用一次设置或取消设置多个字段

{ $unset: { quantity: "", instock: "" } }

{ $set:
   {
     quantity: 500,
     details: { model: "14Q3", make: "xyz" },
     tags: [ "coats", "outerwear", "clothing" ]
   }
}