MongoDB CRUD 操作
crud是指在做计算处理时的增加(Create)、读取查询(Retrieve)、更新(Update)和删除(Delete)几个单词的首字母简写。crud主要被用在描述软件系统中数据库或者持久层的基本操作功能。
一、创建操作
创建或插入操作即向 集合 collection 添加新的 文档 documents。如果插入时集合不存在,插入操作会创建该集合。
MongoDB中提供了以下方法来插入文档到一个集合:
db.collection.insert()
db.collection.insertOne()
db.collection.insertMany()
在MongoDB中,插入操作作用于单个 集合collection 。MongoDB中所有的写操作在单个 集合 document 的层级上是 原子性。

1、db.collection.insert()
db.collection.insert() 向集合插入一个或多个文档.要想插入一个文档,传递一个文档给该方法;要想插入多个文档,传递文档数组给该方法.
如下的示例向 users 集合插入了一个新的文档.新的文档有三个字段 name,``age``,和 status.由于该文档未指定 _id 字段,MongoDB 向该文档添加了值为 ObjectId 的 _id 字段
2、db.collection.insertOne()
如下的示例向 users 集合插入了一个新的文档.新的文档有三个字段 name,``age``,和 status.由于该文档未指定 _id 字段,MongoDB 向该文档添加了值为 ObjectId 的 _id 字段
db.users.insertOne(
{
name: "sue",
age: 19,
status: "P"
}
)

3、db.collection.insertMany()
如下的示例向 users 集合插入了一个新的文档.新的文档有三个字段 name,``age``,和 status.由于该文档未指定 _id 字段,MongoDB 向该文档添加了值为 ObjectId 的 _id 字段
db.users.insertMany(
[
{ name: "bob", age: 42, status: "A", },
{ name: "ahn", age: 22, status: "A", },
{ name: "xi", age: 34, status: "D", }
]
)


二、读取操作
读操作获取 集合 collection 中的 文档 documents ;例如查询一个集合中的文档。MongoDB提供了如下方法从集合中读取文档:
db.collection.find()
你可以指定 条件或者过滤器 找到指定的文档.
db.users.find( <---------- collection 集合
{age:{$gt:18}}, <---------- query criteria 查询条件
{name:1,address:1} <---------- projection 查询内容
).limit(5) <---------- cursor modifier
三、更新操作
更新操作修改 集合 collection 中已经存在的 文档 documents。MongoDB提供了以下方法去更新集合中的文档:
1)db.collection.update()
2)db.collection.updateOne()
3)db.collection.updateMany()
4)db.collection.replaceOne()
在MongoDB中,更新操作作用于单个集合。MongoDB中所有的写操作在单个 文档 document 层级上是 原子性的.
你可以指定条件或过滤器来找到要更新的文档。这些 过滤器 的使用与读操作一样的语法。
db.users.update(
{age:{$gt:18}},
{$set:{status:"A"}},
{multi:true}
)
四、删除操作
删除是从一个集合中删除文档的操作。MongoDB提供下列方法从集合删除文档。
1)db.collection.delete()
2)db.collection.deleteOne()
3)db.collection.deleteMany()
在MongoDB中。删除作作用于单个集合。MongoDB中所有的写操作在单个 文档 document 层级上是 原子性的。
你可以指定条件或过滤器来找到要删除的文档。这些 过滤器 的使用与读操作一样的语法。
db.users.delete(
{status:"D"}
)
remove已经过时了
db.col.remove({'title':'MongoDB 教程'})
MongoDB CRUD 操作的更多相关文章
- Mongodb Manual阅读笔记:CH2 Mongodb CRUD 操作
2 Mongodb CRUD 操作 Mongodb Manual阅读笔记:CH2 Mongodb CRUD 操作Mongodb Manual阅读笔记:CH3 数据模型(Data Models)Mong ...
- MongoDB CRUD 操作手册
基本操作 增加 在MongoDB中通过db.collection.insert()来增加新的数据. db.users.insert({username:"Jack",age:30} ...
- 【翻译】MongoDB指南/CRUD操作(二)
[原文地址]https://docs.mongodb.com/manual/ MongoDB CRUD操作(二) 主要内容: 更新文档,删除文档,批量写操作,SQL与MongoDB映射图,读隔离(读关 ...
- 【翻译】MongoDB指南/CRUD操作(一)
[原文地址]https://docs.mongodb.com/manual/ MongoDB CRUD操作(一) 主要内容:CRUD操作简介,插入文档,查询文档. CRUD操作包括创建.读取.更新和删 ...
- 【翻译】MongoDB指南/CRUD操作(四)
[原文地址]https://docs.mongodb.com/manual/ CRUD操作(四) 1 查询方案(Query Plans) MongoDB 查询优化程序处理查询并且针对给定可利用的索引选 ...
- 【翻译】MongoDB指南/CRUD操作(三)
[原文地址]https://docs.mongodb.com/manual/ CRUD操作(三) 主要内容: 原子性和事务(Atomicity and Transactions),读隔离.一致性和新近 ...
- MongoDB的CRUD操作
1. 前言 在上一篇文章中,我们介绍了MongoDB.现在,我们来看下如何在MongoDB中进行常规的CRUD操作.毕竟,作为一个存储系统,它的基本功能就是对数据进行增删改查操作. MongoDB中的 ...
- Spring Data MongoDB 一:入门篇(环境搭建、简单的CRUD操作)
一.简介 Spring Data MongoDB 项目提供与MongoDB文档数据库的集成.Spring Data MongoDB POJO的关键功能区域为中心的模型与MongoDB的DBColle ...
- mongodb 数据操作CRUD
链接到mongo 新建超级用户 上文中我们提到mongo用户库表管理.为了方便我们先新建一个root权限的用户. db.createUser({user:'dbadmin',pwd:'123456', ...
随机推荐
- memset 导致的一个段错误
原型: void *memset(void *s, int c, size_t n); 解释: memset :是 逐字节 拷贝,即n是指整个变量所占字节,在用于数组时一定要注意n不一定是 数组元素. ...
- 2019ICPC南昌现场赛总结
非常可惜的一场比赛,多了60分钟罚时与银牌无缘.今年6场ICPC网络赛里面打的最差的就是南昌站,冥冥之中自有天意吧,最后被安排去了南昌. 开场被队友叫去先看的L,说是足球,发现就是简单模拟,就直接上机 ...
- 根据IP获取国家,市区,经纬度等的免费库
https://dev.maxmind.com/geoip/geoip2/geolite2/ 此网站上有提供SDK版,访问在线服务,也有离线版,下载库到本地,使用相应语言解析库
- Centos7+puppet+foreman,模板介绍
一.简介 provision templates 是灵活部署合适的操作系统的核心,模板包括有好几类 1.模板种类 pxe相关的模板,比如pxelinux,pxegrub,pxegrub2 kickst ...
- Spring Cloud Alibaba学习笔记(5) - 整合Sentinel及Sentinel规则
整合Sentinel 应用整合Sentinel 在dependencies中添加依赖,即可整合Sentinel <dependency> <groupId>com.alibab ...
- java redisUtils工具类很全
GitHub地址:https://github.com/whvcse/RedisUtil redisUtils工具类: package com.citydo.utils; import org.spr ...
- maven一些简单常用却容易记混的命令参数-U -e -B
install 命令完成了项目编译.单元测试.打包功能,同时把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库,但没有布署到远程Maven私服仓库: deploy 命令完成了项目 ...
- NRF52832 Mesh调试,使其同时支持串口打印和RTT打印
查看开发环境里面,是否有这个文件,如果没有你的话,则添加文件. 然后要在sdk_config.h中添加使能 然后打开刚才添加的文件retarget.c,主意里面这些地方 这里它进行判断,要么使用RTT ...
- ReLU函数的缺陷
ReLU激活功能并不完美. 它有一个被称为 “ReLU 死区” 的问题:在训练过程中,一些神经元会“死亡”,即它们停止输出 0 以外的任何东西.在某些情况下,你可能会发现你网络的一半神经元已经死亡,特 ...
- Python中闭包的原理
定义: 如果在一个内部函数里,对在外部作用域(但不是在全局作用域)的变量进行引用,那么内部函数就被认为是闭包(closure). 简单闭包的例子: 下面是一个使用闭包简单的例子,模拟一个计数器,通过将 ...