一、插入文档
 1、db.集合名.insert()
  插入一个:db.user.insert({name:"Join",age:13,address:"beijing",isDelete:0})
  插入多个:db.user.insert([{name:"Join",age:13,address:"beijing",isDelete:0},{name:"Join2",age:13,address:"beijing",isDelete:0},{name:"Join3",age:13,address:"beijing",isDelete:0}])
 2、db.集合名.save()
  指定_id则为修改更新:db.user.save({_id:ObjectId("234567892345678"),name:"Join",age:13,address:"beijing",isDelete:0})
  不指定_id则和insert是一样的,为新增:db.user.save({name:"Join4",age:13,address:"beijing",isDelete:0})
二、文档更新
 1、更新已经存在的文档:db.集合名.update()
  db.集合名.update(<query>,<update>,{upset:<boolean>,multi:<boolean>,writeConcern:<document>})
  query:查询条件
  update操作符:$set----立即更新;$inc----在原有的基础上累积增加后更新
  multi:可选项,默认为false,如果为true则只更新第一条
  writeConcert:可选项,抛出异常的级别
  eg:db.user.update({name:"Join"},{$set:{age:21}})
 2、通过传入文档替换已有的文档,db.集合名.save()
  db.集合名.save(文档数据,{writeConcern:<document>})
三、文档删除
  db.集合名.remove()
  db.集合名.remove(<query>,{justOne:<boolean>,writeConcern:<document>})
四、文档查询
  1、查询集合中所有的文档:db.集合名.find()
  2、查询符合要求的文档:db.集合名.find(<query>,{<key>:1,<key>:2...}),query为判断查询的要求,key为查询出显示的哪些内容1为显示
    eg:db.user.find({age:21},{age:1,name:1})
  3、以格式化的方式显示:pretty()
    eg:db.user.find().pretty()
  4、查询后显示符合结果的第一条内容:findOne()
  5、查询条件 操作符
    

内容 符合 表达式
大于 $gt db.集合名.({<key>:{$gt:<value>}})
大于等于 $gte db.集合名.({<key>:{$gte:<value>}})
小于 $lt db.集合名.({<key>:{$lt:<value>}})
小于等于 $lte db.集合名.({<key>:{$lte:<value>}})
等于 : db.集合名.({<key>:<value>})
不等于 $ne db.集合名.({<key>:{$ne:<value>}})
使用_id查询 _id db.集合名.({"_id":ObjectId("id值")})
符合结果的数量 count db.集合名.({<key>:<value>}).count()
查询结果中某个字段是否包含某个值 /包含的值/ db.集合名.({name:/io/})
查询结果中某个字段是否以某值开头 /^包含的值/ db.集合名.({name:/^J/})
  6、条件查询 and 、or
    and:db.集合名.find({<key>:<value>,<key2>:<value2>,<key3>:<value3>})
    or  :db.集合名.find({$or:[{<key>:<value>},{<key2>:<value2>}]})
  7、limit、skip  
    limit():读取指定数量的数据内容
      eg:db.集合名.find().limit(5)   读取前5条数据
    skip():跳过指定数量的数据内容
      eg:db.集合名.find().skip(5)   跳过前5条数据
  8、排序sort
    db.集合名.find().sort({key:1})
    1为升序排列,-1为降序排列 
 

MongoDB中文档操作(二)的更多相关文章

  1. MongoDB (八) MongoDB 文档操作

    一. MongoDB 插入文档 insert() 方法 要插入数据到 MongoDB 集合,需要使用 MongoDB 的  insert() 或 save() 方法. 语法 insert() 命令的基 ...

  2. mongoDB 文档操作_删

    mongoDB 文档删除 MySQL对比 mysql delete from table where ... mongo db.collection.deleteOne(query) 删除函数 del ...

  3. mongoDB文档操作

    数据库操作无非就是增.删.改.查.这篇主要介绍增.删.改. 1.增 Mongodb插入操作很简单,使用关键字“insert”.实例: > db.test.blog.insert({"h ...

  4. mongoDB 文档操作_查

    基本查询命令 find 查找复合条件的所有文档 命令 db.collection.find(query,field) 参数 query 查找条件 格式: {ssss:"xxx"}是 ...

  5. mongoDB 文档操作_改

    mongoDB 更改操作 格式对比 MySQL update table set .... where .... db.collection.updateOne(query,update,upsert ...

  6. MongoDB自学------(3)MongoDB文档操作

    一.插入文档 二.查询文档 三.更新文档 可以看到标题(title)由原来的 "Mongodb" 更新为了 "MongoDBtest". 以上语句只会修改第一条 ...

  7. mongoDB文档操作【增删改】

    MongoDB 插入文档 文档的数据结构和JSON基本一样. 所有存储在集合中的数据都是BSON格式. BSON是一种类json的一种二进制形式的存储格式,简称Binary JSON. 插入文档 Mo ...

  8. mongodb的常用操作(二)

    继续mongodb的学习: 9.mongodb条件查询 假设有user集合,里面结构如下:{ "_id" : ObjectId("52ab35d281181f853264 ...

  9. mongoDB 文档操作_增

    增加 / 插入 /保存 单文档插入 命令 db.collection.insertOne(doc) 功能 向被 use 的数据库中插入数据 实例 db.class.insertOne({"n ...

随机推荐

  1. "C#":MySql批量数量导入

    现在对数据库(以MySql为例)的操作大多会封装成一个类,如下例所示: namespace TESTDATABASE { public enum DBStatusCode { ALL_OK, MySq ...

  2. S3c2440A WINCE平台HIVE注册表+binfs的实现

    今天最大的收获莫过于把binfs和hive注册表同时在三星的平台上实现了,这可是前无古人啊(只是看到好多哥们说找不到三星的HIVE资料),哈哈哈.怕今天的成果日后成炮灰,还是写下来比较好,要养成这样的 ...

  3. Machine Learning 学习笔记

    点击标题可转到相关博客. 博客专栏:机器学习 PDF 文档下载地址:Machine Learning 学习笔记 机器学习 scikit-learn 图谱 人脸表情识别常用的几个数据库 机器学习 F1- ...

  4. BI过程简述

    BI流程: 需求分析->维度设计->查询service->ETL倒数据->CDC监听数据库 需求分析:首先确定好的数据来源(多个数据库+excel文件+日志+...),需要的数 ...

  5. 数据结构之---二叉树C实现

    学过数据结构的都知道树,那么什么是树? 树(tree)是包含n(n>0)个结点的有穷集,其中: (1)每个元素称为结点(node): (2)有一个特定的结点被称为根结点或树根(root). (3 ...

  6. Log4j运用于代码中

    在JAVA代码中,我们要打印输出语句的时候,我们经常会使用System.out.print(),但是在项目开发完后,这些代码就会影响项目的运行效率,所以Log4j就派上用场了.话不多说,直接上代码. ...

  7. 面试心得随谈&线程并发的总结

    ---恢复内容开始--- 线程同步有两种实现方式: 基于用户模式实现和用内核对象实现.前者偏于轻量级,性能也更好,但是只能用于同一进程间的线程同步,后者重量级,性能消耗更大,跨进程. 研读了一下win ...

  8. Object对象你真理解了吗?

    前言 五一回家又断更了一个放假时间了~~~ 只有光头才能变强 回顾前面: ThreadLocal就是这么简单 多线程三分钟就可以入个门了! 多线程基础必要知识点!看了学习多线程事半功倍 Java锁机制 ...

  9. 通过slave_exec_mode=IDEMPOTENT跳过主从复制中的错误

    通过slave_exec_mode=IDEMPOTENT跳过主从复制中的错误 set global slave_exec_mode=IDEMPOTENT slave_exec_mode 有两种模式 S ...

  10. C++std函数之transform

    /*//////////////////////////////// template < class InputIterator, class OutputIterator, class Un ...