Mongo 常用操作命令

一、查询都有哪些数据库

复制代码
show dbs

二、切换到指定数据库

复制代码
use database

三、删除数据库

注意:需要先切换到指定数据库,再执行删除指令

复制代码
db.dropDatabase()

四、显示数据库都有哪些数据表

复制代码
show tables

五、查看整个数据库的统计情况

复制代码
db.stats()

六、查询某个集合(表)的统计信息

复制代码
db.collection.stats()

七、插入数据

  • db.collection_name.insert(document):向指定集合中插入一个或多个文档。
  • db.collection_name.insertOne(document):向指定集合中插入一个文档。
  • db.collection_name.insertMany([document1, document2, ...]):向指定集合中插入多个文档。

八、查询数据

  • db.collection_name.find():查询集合中的所有文档。
  • db.collection_name.find({query}):根据查询条件查询文档。
  • db.collection_name.findOne({query}):查询并返回符合条件的第一个文档。
  • db.collection_name.find().count():计算查询结果中的文档数量。
  • db.collection_name.find().sort({field: 1|-1}):按指定字段进行排序,1表示升序,-1表示降序。
  • db.collection_name.find().limit(number):限制查询结果返回的文档数量。
  • db.collection_name.find().skip(number):跳过指定数量的文档后返回查询结果。

九、更新数据

  • db.collection_name.update(query, update, options):更新符合条件的文档。
  • db.collection_name.updateOne(query, update, options):更新符合条件的第一个文档。
  • db.collection_name.updateMany(query, update, options):更新所有符合条件的文档。
  • db.collection_name.replaceOne(query, replacement, options):替换符合条件的第一个文档。

十、删除数据

  • db.collection_name.remove(query):删除符合条件的文档。
  • db.collection_name.deleteOne(query):删除符合条件的第一个文档。
  • db.collection_name.deleteMany(query):删除所有符合条件的文档。

十一、索引

  • db.collection_name.createIndex(keys, options):在指定集合上创建索引。
  • db.collection_name.getIndexes():获取集合上的所有索引信息。
  • db.collection_name.dropIndex(indexName):删除指定索引。
  • db.collection_name.dropIndexes():删除集合上的所有索引。

十二、聚合操作

MongoDB的聚合操作允许您处理数据并返回计算结果,而不仅仅是检索数据。这些操作是通过db.collection.aggregate()方法执行的,它接受一个聚合管道作为参数。聚合管道是一个包含多个阶段(stage)的数组,每个阶段对文档进行转换,并将结果传递给下一个阶段。以下是一些常用的聚合操作符和概念:

  • $group: 将文档分组,并对每个组应用聚合表达式。
  • $match: 过滤文档,只保留符合条件的文档。
  • $sort: 对文档进行排序。
  • $project: 修改文档的结构,例如选择字段、添加计算字段等。
  • $unwind: 将数组字段中的每个元素拆分为单独的文档。

示例

复制代码
db.orders.aggregate([  
  { $match: { status: "A" } },  
  { $group: { _id: "$customer_id", total: { $sum: "$amount" } } },  
  { $sort: { total: -1 } }  
])
相关推荐
张人玉几秒前
c# Data相关类
数据库·oracle
云和数据.ChenGuang几秒前
OpenEuler 系统中安装 MySQL
运维·数据库·mysql·adb·运维工程师·运维技术
wniuniu_2 分钟前
ceph中的rbd的稀疏写入
java·服务器·数据库
科技块儿7 分钟前
如何使用IP数据云数据库接入流量监控?
数据库·网络协议·tcp/ip
叮咚侠18 分钟前
Ubuntu 24.04.3 LTS如何扩容逻辑卷
linux·数据库·ubuntu
张人玉25 分钟前
c#DataTable类
数据库·c#
风月歌26 分钟前
基于微信小程序的学习资料销售平台源代码(源码+文档+数据库)
java·数据库·mysql·微信小程序·小程序·毕业设计·源码
gjc59226 分钟前
【一次线上 MySQL 死锁问题的完整复盘与解析】
数据库·mysql·死锁
qq24392016127 分钟前
mysql导致的内存泄漏Abandoned connection cleanup thread
数据库·mysql
·云扬·29 分钟前
深入理解MySQL InnoDB MVCC:原理、实验与实践
数据库·mysql