2.2 MongooDB基本的CRUD操作 - 副本

增 插入文档

mongo 中提供了三条命令来插入

     # 返回 WriteResult 对象
  db.collection.insert()
  #version 3.2新增 插入一条  返回插入数据的 primary key  _id objectID
  db.collection.insertOne()
  # version 3.2 新增同时插入多条数据 一条失败前面的成功后面的全部失败
  db.collection.insertMany({document数组}
     {writeConcern  < document > 
   ordered  < boolean })
   #writeConcern 在安全写情况下,你可以指定MongoDB写操作要求的确认级别
   # ordered : boolean 有序或者无序插入 默认为true的 如果设置为false 会提高性能
   # w: "majority", wtimeout: 100 插入的时间要求 超过时间判定失败

删除方法

db.collection.remove() #删除符合条件的 可由 justone属性指定 删除一条
db.collection.deleteOne()#删除第一条符合条件的 3.2
db.collection.deleteMany() #删除多条条件选中 3.2

查询的方法

{}代表并且条件

ObjectId

ObjectId是一个 12 字节 BSON 类型数据,有以下格式:

$ 后面接条件符号

数组的查询

用:方式表示数组的并行属于

内嵌对象的查询,

用点的方式 表示内嵌

数组内储存对象

$elemMatch

指定数组内多项条件同时过滤,数组内查询时的并且条件

指定内置数据的位置

正则 ==不推荐==

使用正则筛选一个大体量的数据

$size 查询大小

但是会把数组中含有对象和含有字符串的全部查询出来因此数据的一致性有挑战

find 的第二个参数 显示字段

查询空字段

存在检查

更改

update 的$set

update 的 $unset

把字段删除 相当于==删除==某匹配字段

update 的第三个选项

{returnnewdocument:true} {motli:true}

批量操作

bulkWrite()方法 在使用的时候由两种模式

  • 有序插入 通过选项 ordered true 默认

  • 无序插入 设置为 ordered false

数据结构

浮点数的经度丢失需要使用 decimal格式来处理 ,包括 java 和 c 和 javascript 都在使用而 mongoode 默认就会使用这个格式 , mongo 可以直接存 js 代码指定其类型

Last updated