Mongodb 我可以使用对象的属性在mongo更新中进行基本数学运算吗?

Mongodb 我可以使用对象的属性在mongo更新中进行基本数学运算吗?,mongodb,Mongodb,在SQL中,您可以执行以下操作: UPDATE test SET a = b + c db.test.update({},{$set: {a: b + c}}) 我想知道我是否可以在MongoDB中做一些类似的事情。例如: UPDATE test SET a = b + c db.test.update({},{$set: {a: b + c}}) 然而,当我尝试说b和c没有定义(这是有道理的)。我是否可以告诉mongo使用它正在更新的对象的字段值?或者我总是需要分两步来完成——首先检索

在SQL中,您可以执行以下操作:

UPDATE test SET a = b + c
db.test.update({},{$set: {a: b + c}})
我想知道我是否可以在MongoDB中做一些类似的事情。例如:

UPDATE test SET a = b + c
db.test.update({},{$set: {a: b + c}})

然而,当我尝试说b和c没有定义(这是有道理的)。我是否可以告诉mongo使用它正在更新的对象的字段值?或者我总是需要分两步来完成——首先检索字段,然后使用它们来构造适当的update语句。

在update操作中使用MongoDB无法做到这一点。你需要使用or之类的工具来完成它,即使这样,从技术上讲,你仍然需要运行两个查询,一个要查找,一个要更新。

好吧,我就是这么想的,但我觉得值得一试,看看SO上的优秀人士是否有什么好主意:-p