在python中更新mongo

时间:2012-05-22 22:12:06

标签: mongodb pymongo

我有一个关于更新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}

现在我想要的是:

如果product_id == 1234且颜色== 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}

1 个答案:

答案 0 :(得分: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)