MongoDB数据库常用的10条操作命令

 更新时间:2021年06月17日 15:17:20   作者:岛上码农  
MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。本文简单的介绍一些MongoDB数据库常用的操作命令

1. 显示全部可用数据库

> show dbs;

该命令将展示 mongo 的全部数据库名称,并列出来。

2. 切换数据库

> use mydb;

该命令会选择一个指定的数据库,如果数据库不存在,则会自动创建一个。但是需要注意,由于此时数据库没有数据,因此当使用 show dbs命令的时候,看不到该数据库。只有插入了数据集后才可以看到。

3. 显示数据集

> show collections;

4. 插入数据

插入数据的格式为 db.{数据集名}.insert({数据键值对}),成功后返回插入的条数。

> db.test.insert({"name": "岛上码农"});
WriteResult({ "nInserted" : 1 })

插入多条数据使用中括号括起来即可,此时返回的是批量操作结果,其中 nInserted 返回的是成功插入的条数。。

> db.test.insert([{"name": "岛上码农"},{"name": "掘金"}]);
BulkWriteResult({
	"writeErrors" : [ ],
	"writeConcernErrors" : [ ],
	"nInserted" : 2,
	"nUpserted" : 0,
	"nMatched" : 0,
	"nModified" : 0,
	"nRemoved" : 0,
	"upserted" : [ ]
})

5. 更新数据

更新一条数据的命令如下,其中格式为 db.{数据集名}.update({查询条件}, {$set: {更新后数据}})。

> db.test.update({"name": "岛上码农"}, {$set: {"name": "码农"}});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

以上命令只会更新一条匹配的数据,如果要更新多条,需要增加参数:{multi: true}。

> db.test.update({"name": "岛上码农"}, {$set: {"name": "码农"}}, {multi: true});
WriteResult({ "nMatched" : 2, "nUpserted" : 0, "nModified" : 2 })

也可以使用 updateMany 更新多条。

> db.test.updateMany({"name": "码农"}, {$set: {"name": "岛上码农"}});
{ "acknowledged" : true, "matchedCount" : 3, "modifiedCount" : 3 }

6. 替换文档

替换文档会使用新的文档替换掉已有的文档,其中格式为 db.{数据集名}.save({新文档数据})。例如下面的例子替换了_id 为60c8a50adb9890bf41255fe4的文档。

> db.test.save({"_id": "60c8a50adb9890bf41255fe4", "name": "岛上码农-1"});
WriteResult({
	"nMatched" : 0,
	"nUpserted" : 1,
	"nModified" : 0,
	"_id" : "60c8a50adb9890bf41255fe4"
})

7. 查询数据

查询数据命令为格式为 db.{数据集名}.find()。如果需要限制条数可以加limit(n)。

> db.test.find();

查询出来的格式需要美化的话,加上 pretty()即可。

> db.test.find().pretty();

按条件查询时,在 find 中添加筛选参数即可。

> db.test.find({"name":"岛上码农"}).pretty();

8. 统计条数

统计时使用 count()函数即可,如果需要筛选也是在 find 方法中传筛选条件即可。

> db.test.find().count();

9. 删除文档

删除文档的格式为db.test.remove({筛选条件});

> db.test.remove({"name":"岛上码农-1"});
WriteResult({ "nRemoved" : 1 })

删除一条的使用 deleteOne 方法,删除多条使用 deleteMany 方法。

> db.test.deleteOne({"name":"岛上码农"});
{ "acknowledged" : true, "deletedCount" : 1 }

> db.test.deleteMany({"name":"岛上码农"});
{ "acknowledged" : true, "deletedCount" : 2 }

10. 查看帮助文档

对于有些命令不懂操作的,查看操作文档即可,命令格式为 db.{数据集名}.help()。

以上就是MongoDB数据库常用的10条操作命令的详细内容,更多关于MongoDB 操作命令的资料请关注脚本之家其它相关文章!

相关文章

  • MongoDB安装、基础操作和聚合实例介绍

    MongoDB安装、基础操作和聚合实例介绍

    虽然MongoDB这些年很流行,但笔者之前没研究过,现在有需求研究这类NoSQL的数据库,是为了验证其是否可被替换,本文给大家介绍MongoDB安装、基础操作和聚合实例详解,感兴趣的朋友一起看看吧
    2024-07-07
  • MongoDB的分片集群基本配置教程

    MongoDB的分片集群基本配置教程

    MongoDB拥有经典的Sharding架构能将数据分散存储在数个服务器上以作集群,这里我们就来看一下MongoDB的分片集群基本配置教程:
    2016-07-07
  • MongoDB使用指南--基本操作

    MongoDB使用指南--基本操作

    上篇文章,我们讲诉了MongoDB数据库的用户操作,本文将介绍如何基本操作MongoDB数据库,当然是基本的,最基本的操作,需要的朋友可以参考下
    2014-08-08
  • Mongodb 数据类型及Mongoose常用CURD

    Mongodb 数据类型及Mongoose常用CURD

    MongoDB 是一个开源的 NoSQL 数据库,相比 MySQL 那样的关系型数据库,它更为轻巧、灵活,非常适合在数据规模很大、事务性不强的场合下使用,本文给大家介绍Mongodb 数据类型及Mongoose常用CURD,感兴趣的朋友一起学习吧
    2016-01-01
  • MongoDB数据库查看慢查询级别以及慢查询日志

    MongoDB数据库查看慢查询级别以及慢查询日志

    最近项目上一直在用mongodb作为数据库,mongodb有他的优势,文档型类json格式存储数据,修改起来更方便,但是最近在用mongodb出现了查询缓慢的问题,这篇文章主要给大家介绍了关于MongoDB数据库查看慢查询级别以及慢查询日志的相关资料,需要的朋友可以参考下
    2023-05-05
  • MongoDB中创建索引需要注意的事项

    MongoDB中创建索引需要注意的事项

    这篇文章主要介绍了MongoDB中创建索引需要注意的事项,本文讲解了创建索引可能会引发的问题并给出解决方法,需要的朋友可以参考下
    2015-03-03
  • Mongodb使用$pop删除数组中元素的操作指南

    Mongodb使用$pop删除数组中元素的操作指南

    本文描述怎样从Mongodb的文档数组字段中,使用$pop删除数组中的元素,文中通过代码示例给大家讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-06-06
  • MongoDB 管道的介绍及操作符实例

    MongoDB 管道的介绍及操作符实例

    这篇文章主要介绍了MongoDB 管道的介绍及操作符实例的相关资料,MongoDB的聚合管道将MongoDB文档在一个管道处理完毕后将结果传递给下一个管道处理,需要的朋友可以参考下
    2017-07-07
  • 详解MongoDB的角色管理

    详解MongoDB的角色管理

    这篇文章主要介绍了详解MongoDB的角色管理的相关资料,帮助大家更好的理解和学习使用MongoDB数据库,感兴趣的朋友可以了解下
    2021-03-03
  • MongoDB常用操作汇总

    MongoDB常用操作汇总

    MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。在高负载的情况下,添加更多的节点,可以保证服务器性能。MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。
    2017-05-05

最新评论