相关疑难解决方法(0)

我在更新时使用$ set和$ inc做错了什么

我在mongodb控制台尝试这个:

db.foobar.update( 
  { name: "Foobar" },
  { 
    $set : { foo: { bar: 'bar' }, 
    $inc: { 'foo.count': 1 } 
  } 
}, true)
Run Code Online (Sandbox Code Playgroud)

它返回"ok",但db.foobar.find()返回一个空记录集.我正在尝试upsert一个文档,所以它看起来像:

name: Foobar
foo: {
  bar: 'bar'
  count: 1
}
Run Code Online (Sandbox Code Playgroud)

如果doc不存在,则创建一个计数为1.否则,只需增加计数.为什么不在上面工作?

mongodb

14
推荐指数
1
解决办法
2万
查看次数

嵌套数组中的Mongodb Increment值

我正在为Spring使用mongotemplate,我想知道如何以原子方式增加我在一个数组中的一个文件的值.想象一下,我们有

{'a':1,
   b:[{_id:341432,
       c:2
      },
      {_id:341445,
       c:3
      }]};
Run Code Online (Sandbox Code Playgroud)

对于_id 341445,我想要的是将c从3增加到4

我一直在使用findAndModify,但我不知道如何为数组中的嵌套文档创建它.

问候.

java spring mongodb

14
推荐指数
1
解决办法
1万
查看次数

标签 统计

mongodb ×2

java ×1

spring ×1