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 } }  
])
相关推荐
动力 continue20 分钟前
MySQL 基础篇 · SELECT 查询大
数据库·sql·mysql·select
程序员-Benothing41 分钟前
MySQL 索引下推是什么?——深入理解 ICP 原理与实践
android·数据库·mysql
这个DBA有点耶43 分钟前
MySQL主从延迟的“最后一公里”:如何把延迟压到极限
数据库·程序员·架构
DianSan_ERP1 小时前
WMS接入电商平台自动化履约实战:一张订单从平台到出库的接口时序设计
java·前端·网络·数据库·安全·架构·自动化
智购科技自动售货机工厂2 小时前
2026自动售货机语音支付模块集成:从声纹识别到支付闭环的工程实践~YH
大数据·服务器·网络·数据库·人工智能
做一个AK梦2 小时前
论基于云原生数据库的企业信息系统架构设计
数据库·云原生
风哥2号2 小时前
PostgreSQL数据库恢复工具FGPDU(FGEDU PostgreSQL DUL)
数据库·postgresql
智购科技智能售货柜3 小时前
2026自动售货机峰值交易流量应对方案:从消息削峰到弹性扩容的工程实践~YH
数据库·人工智能·单片机·嵌入式硬件·yolo
JavaPub-rodert3 小时前
Ontop 详解:不搬数据库,也能把 MySQL / PostgreSQL 变成知识图谱
数据库·mysql·postgresql
xiaoxiang96093 小时前
Git 分支同步实战:`merge -X theirs` 与完全合并方案
数据库·git·elasticsearch