在我的grails项目中,我使用的代码如下:
def contextsToFlush = [ 'contexts.a_b_c':1, 'contexts.a_b':1, 'contexts.a':1, total:1]
MyDomainClass.collection.update( [ _id:this.getId() ], [ $inc:contextsToFlush, $set:[ lastFlush:lastFlush ] ], false, false, WriteConcern.ACKNOWLEDGED )
有时total
字段不会增加:
{
"_id" : "52fce967144b39a7c11c1c54",
"contexts" : {
"a_b_c" : NumberLong(1),
"a_b" : NumberLong(1),
"a" : NumberLong(1),
},
"lastFlush" : NumberLong("1392307968375"),
"total" : NumberLong(0),
}
可以,$inc
运算符以不同方式处理文档字段和子文档字段吗?