• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    MongoDB增删查改操作示例【基于JavaScript Shell】

    本文实例讲述了MongoDB增删查改操作。分享给大家供大家参考,具体如下:

    MongoDB自带了一个JavaScript Shell,所以在其中使用js语法是可以的。

    Insert操作:

    单条插入

    var single={"name":"mei","age":22}
    db.user.insert(single);
    
    

    循环插入

    var single={"name":"tinyphp","num":28,}
    for(var i=0;i5;i++){single.num=i;db.user.insert(single);}
    
    

    Find查询操作:

    db.集合名.find(query,fields,limit,skip)
    
    

    query,指明查询条件,相当于SQL中的where语句
    例子:

    db.student.find({"name":"joe","age":{$lt:22}})
    

    fields用于字段映射,语法格式:{field:0}或{field:1}

    例子:

    db.student.find({"age":{$lt:22},{"_id":0,"name":1}})

    表示查询结果包含name字段,不包含_id字段

    limit限制查询结果集的文档数量,指定查询返回结果数量的上限

    例子:

    db.student.find({"name":"joe"},{"name":1,"age":1},5)
    

    skip跳过一定数量的结果,设置第一条返回文档的偏移量

    例子:

    db.student.find({"name":"joe"},{"name":1,"age":1},5,20)

    表示跳过前20条文档

    排序:-1降序,1升序

    db.user.findOne()
    
    

    注意事项:MongoDB不支持多集合间的连接查询,find函数一次查询只针对一个集合

    比较查询操作符:

    比较操作符 对应 参数
    $eq和$ne =和!= {:{$eq:}}
    $gt和$gte >和>= {:{$gt:}}
    $lt和$lte 和= {:{$lt:}}
    $in和$nin 包含 和 不包含 {:{$in:[,]}}

    例子:

    /*find age >22*/
    db.user.find({"age":{$gt:22}})
    
    

    逻辑查询操作符:

    逻辑操作符 对应 参数
    $and {$and:[{条件1},..,{条件N}]} db.user.find({$and:[{"name":"tinyphp","num":3}]}) 等同 db.user.find({"name":"tinyphp","num":3})
    $or {$or:[{条件1},..,{条件N}]}
    $nor {$nor:[{条件1},..,{条件N}]}
    $not 取反 {field:{$not:{条件}}}

    元素操作符:

    元素操作符 作用
    $exists 按照字段是否存在来查询文档 {field:{$exists:布尔值}} db.user.find({"age":{$exists:true}}) 查询存在age字段的文档
    $type 选择字段值为指定BSON数据类型编号的文档

    正则匹配

    /* find name 开头为j的*/
    db.user.find({"name":/^j/})
    
    

    $where查询

    可以结合javascript进行查询,当javascript返回true时,才返回当前文档

    db.user.find({$where:function(){return this.name=='jack'}})
    
    

    查询时,$where操作符不能使用索引,每个文档需要从BSON对象转换成javascript对象后,才可以通过$where表达式运行,因此比常规查询要慢,一般要避免使用$where查询。

    还可以存起来用:

    var list=db.user.find();
     list.forEach(function(x){
    print(x.name);
    })
    
    

    Update操作:

    整体更新

    var model=db.user.findOne({"name":"jack"})
    model.age=44
    db.user.update({"name":"jack"},model)
    
    

    局部更新

    $inc修改器

    /*update bing age+30 */
    db.user.update({"name":"bing"},{$inc:{"age":30}})
    
    

    $set修改器

    /*update bing age=10 */
    db.user.update({"name":"bing"},{$set:{"age":10}})
    
    

    update的true参数

    若update最后参数加true则修改条件不存在时,自动增加一条如:

    db.user.update({"name":"Mark"},{$set:{"age":10}},true)
    
    

    会自动增加一条记录:name为mark,age为10

    如果加了true,而且条件又满足则会批量修改,不然就默认只更新第一条

    Remove操作:

    db.person.remove({"name":"jack"})
    
    

    希望本文所述对大家MongoDB数据库程序设计有所帮助。

    您可能感兴趣的文章:
    • Java操作Mongodb数据库实现数据的增删查改功能示例
    • MongoDB入门教程之细说MongoDB数据库的增删查改操作
    • MongoDB中对文档的增删查改基本操作方法总结
    • mongodb数据库实验之增删查改
    上一篇:MongoDB简单操作示例【连接、增删改查等】
    下一篇:express使用Mongoose连接MongoDB操作示例【附源码下载】
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    MongoDB增删查改操作示例【基于JavaScript Shell】 MongoDB,增删,查改,操作,示例,