ongoDB中文档存入数据库后用update方法更新文档,update方法有两个参数,例如
update(args1,args2)
args1是指查询文档的条件;
args2是指对查询到的文档进行什么样的修改;
$inc用来增加已用的键值,如果键不存在就创建;
$Inc只能修改的键值必须为整数、长整型和双精度浮点型,不能是其他类型。
使用$inc增加键值:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
> 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 })
|
修改后结果:
1
2
3
4
5
6
7
8
9
10
11
12
|
> db.post.findOne({ "id" :0})
{ "_id" : ObjectId( "54a530c3ff0df3732bac167f" ),
"id" : 0,
"name" : "joe" ,
"age" : 71,
"comments" : {
"1" : 4,
"2" : 2,
"3" : 3
}
} |
使用$inc减少键值:
1
2
|
> db.post.update({ "id" :0}, {$inc:{ "age" :-16}})
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
|
修改后的结果:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
> db.post.findOne({ "id" :0})
{ "_id" : ObjectId( "54a530c3ff0df3732bac167f" ),
"id" : 0,
"name" : "joe" ,
"age" : 55,
"comments" : {
"1" : 4,
"2" : 2,
"3" : 3
}
} > |
本文转自 bannerpei 51CTO博客,原文链接:http://blog.51cto.com/281816327/1598401,如需转载请自行联系原作者