【MongoDB学习笔记9】深入MongoDB的更新(update)操作:修改器$inc

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    
        }    
}    
>


文章题目:【MongoDB学习笔记9】深入MongoDB的更新(update)操作:修改器$inc
网页链接:http://scyanting.com/article/ieegsi.html