ongoDB中文档存入数据库后用update方法更新文档,update方法有两个参数,例如
update(args1,args2)
args1是指查询文档的条件;
args2是指对查询到的文档进行什么样的修改;
$inc用来增加已用的键值,如果键不存在就创建;
$Inc只能修改的键值必须为整数、长整型和双精度浮点型,不能是其他类型。
使用$inc增加键值:
> db.post.findOne({"id":0}) { "_id" : ObjectId("54a530c3ff0df3732bac167f"), "id" : 0, "name" : "joe", "age" : 65, "comments" : { "1" : 4, "2" : 2, "3" : 3 } } > db.post.update({"id":0}, {$inc:{"age":6}}) WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
修改后结果:
> db.post.findOne({"id":0}) { "_id" : ObjectId("54a530c3ff0df3732bac167f"), "id" : 0, "name" : "joe", "age" : 71, "comments" : { "1" : 4, "2" : 2, "3" : 3 } }
使用$inc减少键值:
> db.post.update({"id":0}, {$inc:{"age":-16}}) WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
修改后的结果:
> db.post.findOne({"id":0}) { "_id" : ObjectId("54a530c3ff0df3732bac167f"), "id" : 0, "name" : "joe", "age" : 55, "comments" : { "1" : 4, "2" : 2, "3" : 3 } } >
转载于:https://blog.51cto.com/281816327/1598401