我在集合orders
中有一些文档,其中is_show
已经为新文档设置了值true/false
。
现在我想要的是,对于过去的文档,它应该插入密钥
特定订单类型的值为is_show
的{{1}}。为了那个原因
我已编写查询,如下所示:
false
但是对于新文档和旧文档,它是如何添加db.getCollection("orders").update({"order_type":1}, {$set: {"is_show": false}}, false, true)
false的。
那么如何修改查询以实现该功能?
答案 0 :(得分:3)
您可以使用$exists
查询运算符检查文档是否包含该字段
db.getCollection("orders").update(
{ "order_type": 1, "is_show": { "$exists": false }},
{ "$set": { "is_show": false }},
{ "multi": true }
)