前言

本教程适合有一定数据库开发经验的人员阅读。对于刚开始接触数据库的童鞋,建议直接跳到本文的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 指令简单汇总相关推荐

  1. 从0开始学c语言-总结04-一维、二维数组简单汇总

    数组算是我们比较常用的知识,而对于数组的运用,如若和指针结合便会显得十分有趣.总结专栏不会详细解释为什么.(其实单纯看数组并看不出什么知识,这里总结的只是最基本用法和了解.)相关文章链接放在最后(被汇 ...

  2. 7 怎么查看文件夹容量_C盘(系统盘)磁盘剩余容量告警?如何解决与预防,C盘容量告急解决方法简单汇总!...

    大家好,我是FreeRonin. 前几天号主分享了几篇文章,大家没看的可以了解一下:没准哪天你会用上. 嫌网盘下载文件太慢,这有免费的文件分享方法助你快速分享与下载! 国内好用的搜索引擎简单汇总 号主 ...

  3. AngularJS学习笔记二:AngularJS指令

    AngularJS 指令: AngularJS 通过被称为 指令 的新属性来扩展 HTML. AngularJS 指令是扩展的 HTML 属性,带有前缀 ng-. 几个常用 指令: ng-app 指令 ...

  4. 使用Express和MongoDB构建CRUD应用程序-第2部分

    by Zell Liew 由Zell Liew 使用Express和MongoDB构建CRUD应用程序-第2部分 (Building a CRUD Application with Express a ...

  5. 我的世界服务器物品代码,我的世界指令代码大全 2021通用指令代码汇总[多图]...

    我的世界指令代码还有很多玩家都不清楚,那么手机版和电脑版通用指令是什么,大家输入什么代码可以使用,还不知道的玩家一起来看看吧. 我的世界2021通用指令代码汇总 /kill @e[type = evo ...

  6. 【SQL开发实战技巧】系列(二):简单单表查询

    系列文章目录 [SQL开发实战技巧]系列(一):关于SQL不得不说的那些事 [SQL开发实战技巧]系列(二):简单单表查询 [SQL开发实战技巧]系列(三):SQL排序的那些事 [SQL开发实战技巧] ...

  7. Excel·VBA多行多列数据简单汇总

    目录 1,多行多列数据简单汇总 举例 2,数据汇总函数化.通用化 match函数 举例1 举例2 3,字典嵌套字典汇总数据 举例 不同于之前写过的 <Excel·VBA统计表生成函数及应用实例& ...

  8. MongoDB自学笔记8--- 3.3 MongoDB Shell简介及简单使用

     3.3 MongoDB Shell简介及简单使用 mongoDB Shell是mongoDB自带的一个javascript shell,随mongoDB安装包一同发布.可以使用mongoDB she ...

  9. Eclipse汉化方法的简单汇总

    最近正在入门Java语言,而学习语言当然少不了一个功能强大的的IDE,eclipse作为一个经典好用的IDE当然是不二选择,当然最近Intellij也是很火,这里就不多说.本文主要简单汇总一下ecli ...

最新文章

  1. Eclipse问题集锦
  2. PostgreSQL在何处处理 sql查询之四十六
  3. C# .Net中的类型转换
  4. Golang——结构体创建与初始化、结构体与数组、结构体与切片、结构体与map、结构体作为函数参数、结构体方法、结构体方法继承
  5. [Mechine Learning Algorithm] 集成学习方法——Bagging和 Boosting
  6. iot开源_Android ROM开源,新的IoT应用程序以及更多新闻
  7. linux下赛车游戏,SuperTuxKart 1.0 发布,开源Linux赛车游戏
  8. Linux虚拟机挂载共享文件夹
  9. LiveWallPaper 让您的壁纸动起来 连载(三)——OpenGL ES特辑
  10. 【ubuntu】安装qemu
  11. Rust语言开发基础(二)开发环境安装
  12. NLP扎实基础3:TF-IDF文本特征提取
  13. office高级应用与python综合案例教程_《office高级应用案例教程.ppt
  14. Qt系列文章之 右键菜单QMenu(下)
  15. 田园综合体建设指导手册
  16. Ubuntu系统安装、配置与美化(Ubuntu20.04)
  17. Linux系列(一): 在虚拟机中安装Ubuntu
  18. 如何设置计划任务程序 每6小时运行一次_如何用 Python 打造一个全自动赚钱的 YouTube 视频发布系统并月入过万(被动收益)
  19. 和Xiong的一段对话
  20. 秒杀系统常用的削峰方法

热门文章

  1. 多功能计算机如何关闭,多功能的计算机显示终端
  2. 思路不清晰还想月薪过万?学会这4招,升职加薪有望
  3. 半个月自学入行软件测试,也许你就是下一个测试总监
  4. 基于持续集成的轻量级接口自动化测试
  5. 从功能到接口,原来技能可以通用!
  6. java撕裂_屏幕撕裂与卡顿分析
  7. ios逆向和java_逆向,安卓简单还是IOS简单?
  8. python cocos2dx_cocos2dx 3.0 环境搭建、项目编译于运行
  9. c语言小车倒车程序,STC12C5A60S2串口演示程序(C语言版)
  10. 如何算三角形的cotangent