zoukankan      html  css  js  c++  java
  • MongoDB 学习手册

    mongoDB 增加数据
    // mongoDB 增加数据:
        //新增数据insert( 字典 ) 表示插入一条数据,insert([字典]) 表示插入多条数据
        // db.text01.insert([
        //         {'name':"小智",'sex':'',"ID":"213123213213"},
        //         {'name':"小梁",'sex':'',"ID":"21231241231245"},
        //         {'name':"小龟",'sex':'',"ID":"21235454231245"}])
    
        //插入一条数据
        // db.text01.insertOne()
        //插入多条数据(数据为列表集)
        // db.text01.insertMany([
        //         {'name':"anec3",'sex':'',"ID":"213123213213"},
        //         {'name':"小美",'sex':'',"ID":"21231241231245"},
        //         {'name':"小华",'sex':'',"ID":"212354231245"}])
    
        //第二种增加数据的方式: save()
        // var do2 = [{'name':"小前",'sex':'',"ID":"21235454231245"},{'name':"小成",'sex':'',"ID":"21231241231245"}]
        // db.text01.save(do2)
    mongoDB 修改数据:
    // mongoDB 修改数据:
    // 语法格式:
    // db.collection.update(
    //    <query>,          //update的查询条件,类似sql update查询内where后面的。
    //    <update>,         //update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的.
    //    {
    //      upsert: <boolean>,      //可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
    //      multi: <boolean>,       //可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
    //      writeConcern: <document>        //可选,抛出异常的级别
    //    }
    // )
    
    // 更新name = '小成' ID = '' 的一条记录:
    // db.text01.update({"name":'小成'},{$set:{"ID":"000000000000"}});
    
    // 更新全部 name以''开头的数据ID=000000000000.
    // db.text01.update({"name":/^小/},{$set:{"ID":"000000000000"}},false,true);
    
    // 为没有count的字段 添加一个count=50字段,
    // db.a1.update(
    //     {"count":{$exists : false}},
    //     {"$set":{"count" : 50}},
    //     false,
    //     true
    // )
    mongoDB 删除数据
    // mongoDB 删除数据:(emove()方法)
    // 语法结构:
    // db.collection.remove(
    //    <query>,          //删除的文档的条件。
    //    {
    //      justOne: <boolean>,     //(可选)如果设为 true 或 1,则只删除一个文档,如果不设置该参数,或使用默认值 false,则删除所有匹配条件的文档。
    //      writeConcern: <document>        //(可选)抛出异常的级别。
    //    }
    // )
    
    // 删除匹配的记录
    // db.text01.remove({'name':"小成"})
    
    // 删除一条匹配的记录
    // db.text01.remove({'sex':""},true)
    
    // 删除所有记录
    // b.text01.remove({})
    
    // remove() 方法 并不会真正释放空间。
    // 需要继续执行 db.repairDatabase() 来回收磁盘空间。
    // db.repairDatabase()
    
    // 官方建议使用:
    // db.text01.deleteOne({'name':'anec'})
    // db.text01.deleteMany()
    mangoDB 查询语法
    // ------------------------------------------------------------
    
    // mangoDB 查询语法:
    // db.collection.find(
    //                     query,      //可选,使用查询操作符指定查询条件
    //                     projection  //可选,使用投影操作符指定返回的键。查询时返回文档中所有键值, 只需省略该参数即可(默认省略)。
    //                     )
    
    //显示指定字段(id 要加下划线)
    // db.a1.find({},{_id:0,name:1,sex:1}).pretty()
    
    //排除不显示的字段
    // db.a1.find({},{ID:0,count:0} )
    
    // 以格式化的方式来显示所有文档
    // db.a1.find().pretty()
    
    //返回一个找到到的数据
    // db.a1.findOne()
    
    // ***************************
    
    // 比较符:
    // 查找到name = a2 的数据:
    // db.a1.find({'name':'a2'})
    
    // 查找到count 小于 40 的数据
    // db.a1.find({"count":{$lt:40}}).pretty()
    
    // 查找到count 大于 60 的数据
    // db.a1.find({"count":{$gt:60}}).pretty()
    
    // 查找到count 小于等于 35 的数据
    // db.a1.find({"count":{$lte:35}}).pretty()
    
    // 查找到count 大于等于 64 的数据
    // db.a1.find({"count":{$gte:64}}).pretty()
    
    // 查找cont  大于50小于80
    // db.a1.find({'count':{$gt:50,$lt:80}})
    
    // 查找到count 不等于 64 的数据
    // db.a1.find({"count":{$ne:64}}).pretty()
    
    // ***************************
    
    // MongoDB AND 条件(多个条件查询)
    // 查询语法:
    // db.col.find({key1:value1, key2:value2}).pretty()
    
    // db.a1.find({'sex':'','count':{$gt:50}})
    
    // OR 条件
    // db.a1.find({$or:[{'name':'a1'},{'name':"a2"}]})
    
    // ***************************
    
    // 查询指定数据内的数据

     // db.a1.find({字段名:{'$in':[字段值1,字段值2,字段值3']}})
     // db.a1.find({'name':{'$in':['a1','a2','a3']}})

      // 查询不在指定数据内的数据

      // db.a1.find({字段名:{'$nin':[字段值1,字段值2,字段值3']}})
      // db.a1.find({'name':{'$nin':['a1','a2','a3']}})

    // ***************************
    // not

       // db.a1.find({字段名:{'$not':[运算符表达式]}})
       // db.a1.find({'count':{$not: {$lte:74}}})

      //nor  =  not or 

      // db.a1.find({字段名:{'$nor':[运算符表达式]}})
      // db.a1.find({$nor:[{'sex':'男'},{'count':{$lte:20}}]})

     //***************************

      // $exists 取出没有的字段
      // db.a1.find({'count':{$exists:0}})

    //***************************

    // $type 对用类型的数据 2:字符串
    // db.a1.find({'name':{$type:2}})




    // ***************************
    //显示前两条数据
    // db.a1.find().limit(2)
    
    //跳过前两条显示两条数据
    // db.a1.find().limit(2).skip(2)
    
    //升序排序
    // db.a1.find({},{_id:1,name:1}).sort({name:1})
    
    //降序排序
    // db.a1.find({},{_id:1,name:1}).sort({name:-1})
    
    //skip(), limilt(), sort()三个放在一起执行的时候,执行的顺序是先 sort(), 然后是 skip(),最后是显示的 limit()。
    
    // ***************************

    查找到操作:

    find_one_and_delete()   //查找后删除
    
    find_one_and_replace()  //查找后替换
    
    find_one_and_update()  //查找后更新
    
    create_index()   //在集合上创建索引
    
    create_indexes()  //在集合上创建一个或多个索引
    
    drop_index()  //删除此集合上的索引
  • 相关阅读:
    模式识别之svm()---支持向量机svm 简介1995
    机器视觉之相关资源--- 计算机视觉相关的部分测试数据集和源码站点
    包的引入,不要引入自己目录下的。
    内省对象 用的少,被BeanUtils代替
    使用增强for循环遍历集合的时候操作集合的问题?
    Integer 内部实现
    eclipse常用快捷键
    java 运行时环境和编译器环境
    js 随机变换图片
    js 事件点击 显示 隐藏
  • 原文地址:https://www.cnblogs.com/Anec/p/10165675.html
Copyright © 2011-2022 走看看