MongoDB(二)CRUD 指令简单汇总
前言
本教程适合有一定数据库开发经验的人员阅读。对于刚开始接触数据库的童鞋,建议直接跳到本文的References中去选择更适合的教程。还有一点需要注意的是,mongodb的版本2和版本3之间存在很大差异,查看教程的时候一定要注意~
一般指令
use DATABASE_NAME
:切换到数据库,如果该数据库不存在,则自动创建
show dbs
:查看所有的数据库
show tables
:查看所有的集合
db.dropDatabase()
:进入数据库后删除数据库
db.COLLECTION_NAME.drop()
:删除集合
db.COLLECTION_NAME.find()
:查看集合中的所有内容或是特定内容
插入文档
db.COLLECTION_NAME.insertOne()
:向指定集合中插入一条文档数据
db.COLLECTION_NAME.insertMany()
:向指定集合中插入多条文档数据
还有很多等价的插入操作
db.collection.update()
: upsert:true
db.collection.updateOne()
: upsert:true
db.collection.updateMany()
: upsert:true
db.collection.findAndModify()
: upsert:true
db.collection.findOneAndUpdate()
: upsert:true
db.collection.findOneAndReplace()
: upsert:true
db.collection.save()
.
db.collection.bulkWrite()
.
更新文档
update
db.collection.update(<query>,<update>,{upsert: <boolean>,multi: <boolean>,writeConcern: <document>}
)
query : update的查询条件,类似sql update查询内where后面的。
update : update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的
upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
writeConcern :可选,抛出异常的级别。
db.collection.updateOne()
向指定集合更新单个文档
db.collection.updateMany()
向指定集合更新多个文档
例子:
db.COLLECTION_NAME.update({'title':'MongoDB 教程'},{$set:{'title':'MongoDB'}},{multi:true}
)
save
db.collection.save(<document>,{writeConcern: <document>})
document : 文档数据。
writeConcern :可选,抛出异常的级别。
replace
db.collection.replaceOne()
删除文档
db.COLLECTION_NAME.deleteMany()
:删除单个文档
db.COLLECTION_NAME.deleteOne()
:删除多个文档
查询文档
db.COLLECTION_NAME.find({<field1>: <value1>, <field1>: { <operator1>: <value1> }})
:field指名称,operator指操作符
db.collection.findOne()
example
db.inventory.find( { status: "D" } )
等价于SELECT * FROM inventory WHERE status = "D"
db.inventory.find( { status: { $in: [ "A", "D" ] } } )
等价于SELECT * FROM inventory WHERE status in ("A", "D")
db.inventory.find( { status: "A", qty: { $lt: 30 } } )
等价于SELECT * FROM inventory WHERE status = "A" AND qty < 30
db.inventory.find( { $or: [ { status: "A" }, { qty: { $lt: 30 } } ] } )
等价于SELECT * FROM inventory WHERE status = "A" OR qty < 30
更多和操作符相关的查看该文档
查询内嵌的对象,使用标识符.
db.inventory.find( { "size.uom": "in" } )
References
菜鸟教程MongoDB入门
runnob MongoDB入门
MongoDB中文手册
官方教程
想要了解更多开发技术,面试教程以及互联网公司内推,欢迎关注我的微信公众号!将会不定期的发放福利哦~
MongoDB(二)CRUD 指令简单汇总相关推荐
- 从0开始学c语言-总结04-一维、二维数组简单汇总
数组算是我们比较常用的知识,而对于数组的运用,如若和指针结合便会显得十分有趣.总结专栏不会详细解释为什么.(其实单纯看数组并看不出什么知识,这里总结的只是最基本用法和了解.)相关文章链接放在最后(被汇 ...
- 7 怎么查看文件夹容量_C盘(系统盘)磁盘剩余容量告警?如何解决与预防,C盘容量告急解决方法简单汇总!...
大家好,我是FreeRonin. 前几天号主分享了几篇文章,大家没看的可以了解一下:没准哪天你会用上. 嫌网盘下载文件太慢,这有免费的文件分享方法助你快速分享与下载! 国内好用的搜索引擎简单汇总 号主 ...
- AngularJS学习笔记二:AngularJS指令
AngularJS 指令: AngularJS 通过被称为 指令 的新属性来扩展 HTML. AngularJS 指令是扩展的 HTML 属性,带有前缀 ng-. 几个常用 指令: ng-app 指令 ...
- 使用Express和MongoDB构建CRUD应用程序-第2部分
by Zell Liew 由Zell Liew 使用Express和MongoDB构建CRUD应用程序-第2部分 (Building a CRUD Application with Express a ...
- 我的世界服务器物品代码,我的世界指令代码大全 2021通用指令代码汇总[多图]...
我的世界指令代码还有很多玩家都不清楚,那么手机版和电脑版通用指令是什么,大家输入什么代码可以使用,还不知道的玩家一起来看看吧. 我的世界2021通用指令代码汇总 /kill @e[type = evo ...
- 【SQL开发实战技巧】系列(二):简单单表查询
系列文章目录 [SQL开发实战技巧]系列(一):关于SQL不得不说的那些事 [SQL开发实战技巧]系列(二):简单单表查询 [SQL开发实战技巧]系列(三):SQL排序的那些事 [SQL开发实战技巧] ...
- Excel·VBA多行多列数据简单汇总
目录 1,多行多列数据简单汇总 举例 2,数据汇总函数化.通用化 match函数 举例1 举例2 3,字典嵌套字典汇总数据 举例 不同于之前写过的 <Excel·VBA统计表生成函数及应用实例& ...
- MongoDB自学笔记8--- 3.3 MongoDB Shell简介及简单使用
3.3 MongoDB Shell简介及简单使用 mongoDB Shell是mongoDB自带的一个javascript shell,随mongoDB安装包一同发布.可以使用mongoDB she ...
- Eclipse汉化方法的简单汇总
最近正在入门Java语言,而学习语言当然少不了一个功能强大的的IDE,eclipse作为一个经典好用的IDE当然是不二选择,当然最近Intellij也是很火,这里就不多说.本文主要简单汇总一下ecli ...
最新文章
- Eclipse问题集锦
- PostgreSQL在何处处理 sql查询之四十六
- C# .Net中的类型转换
- Golang——结构体创建与初始化、结构体与数组、结构体与切片、结构体与map、结构体作为函数参数、结构体方法、结构体方法继承
- [Mechine Learning Algorithm] 集成学习方法——Bagging和 Boosting
- iot开源_Android ROM开源,新的IoT应用程序以及更多新闻
- linux下赛车游戏,SuperTuxKart 1.0 发布,开源Linux赛车游戏
- Linux虚拟机挂载共享文件夹
- LiveWallPaper 让您的壁纸动起来 连载(三)——OpenGL ES特辑
- 【ubuntu】安装qemu
- Rust语言开发基础(二)开发环境安装
- NLP扎实基础3:TF-IDF文本特征提取
- office高级应用与python综合案例教程_《office高级应用案例教程.ppt
- Qt系列文章之 右键菜单QMenu(下)
- 田园综合体建设指导手册
- Ubuntu系统安装、配置与美化(Ubuntu20.04)
- Linux系列(一): 在虚拟机中安装Ubuntu
- 如何设置计划任务程序 每6小时运行一次_如何用 Python 打造一个全自动赚钱的 YouTube 视频发布系统并月入过万(被动收益)
- 和Xiong的一段对话
- 秒杀系统常用的削峰方法