上一篇文章$set介绍了文档内部数据的修改更新方式,这篇文章主要是讲解对数值进行增加和减少的操作
与$set一样如果我们需要更新的字段并不存在那么$inc会自动为当前的文档增加一个字段
就如前面所言,$inc只能作用于整形 长整型 或者双精度浮点型,其他类型上会出现失败。
元数据
{ "_id" : ObjectId("5afd34052c63ae1a943bdb27"), "name" : "hello", "friends" : 33.0, "enemies" : 2.0 } { "_id" : ObjectId("5afd347c2c63ae1a943bdb29"), "name" : "joe", "friends" : 34.0, "enemies" : 4.0 }
现在执行增加操作
db.test.update({"name":"hello"},{"$inc":{"friends":1}}) 得到的结果如下 { "_id" : ObjectId("5afd34052c63ae1a943bdb27"), "name" : "hello", "friends" : 34.0, "enemies" : 2.0 } { "_id" : ObjectId("5afd347c2c63ae1a943bdb29"), "name" : "joe", "friends" : 34.0, "enemies" : 4.0 }