-1

我有一个关于更新 mongo 集合的非常基本的问题。

假设我有一个这样的 mongo 文档:

{"Object_id:.....,"product_id":1234, "color":0}
{"Object_id:.....,"product_id":1234, "color":1} # note the same product_id
{"Object_id:.....,"product_id":12345, "color":0}

现在我想要的是:

if product_id == 1234 and color == 1: # 将该文档修改为 color = 2

更新后

{"Object_id:.....,"product_id":1234, "color":0}
{"Object_id:.....,"product_id":1234, "color":2} # note the same product_id
{"Object_id:.....,"product_id":12345, "color":0}
4

1 回答 1

0

从字面上做你想做的事是:

db.foo.update({"product_id" : 1234, "color" : 1}, {$set : {"color" : 2}})

如果您多次出现 product_id == 1234 和 color == 1 并且您想在找到时更新它们,那么它是:

db.foo.update({"product_id" : 1234, "color" : 1}, {$set : {"color" : 2}}, false, true)
于 2012-05-23T14:37:05.650 回答