常用聚合操作符($match、$group、$project 等)
MongoDB 聚合框架通过多个操作符组合,完成复杂的数据筛选、分组和转换。以下是常用的聚合操作符介绍:
$match
用于过滤文档,类似于查询条件,只保留满足条件的文档。
{ $match: { status: "active" } }
`
$group
用于分组数据,常用于统计、求和、平均等操作。
{
$group: {
_id: "$category", // 分组字段
totalSales: { $sum: "$amount" }, // 计算总销售额
count: { $sum: 1 } // 统计数量
}
}
$project
用于选择和重新格式化输出字段,可以包含、排除字段,或添加新字段。
{
$project: {
name: 1, // 显示 name 字段
totalSales: 1, // 显示 totalSales 字段
discountPrice: { $multiply: ["$price", 0.9] } // 新增折后价字段
}
}
其他常用操作符
$sort:对文档排序。
{ $sort: { createdAt: -1 } }
$limit:限制输出文档数量。
{ $limit: 10 }
$skip:跳过指定数量文档。
{ $skip: 5 }
$unwind:拆分数组字段,将数组元素拆成多条文档。
{ $unwind: "$tags" }
结合这些操作符,可以灵活构建聚合管道,实现复杂的数据分析和转换。
相关内容
- 什么是 MongoDB? MongoDB 是一种基于文档的 NoSQL 数据库,使用 BSON 格式存储数据,具有灵活的架构设计,适合海量数据、高并发应用,支持丰富查询与水平扩展。
- MongoDB 与关系型数据库的区别 MongoDB 与关系型数据库在数据模型、扩展性、灵活性和查询方式上存在显著差异,分别适用于不同类型的应用场景和业务需求。
- 使用场景与优势 MongoDB 以其灵活的数据模型、高性能和强大的扩展能力,广泛应用于现代互联网、移动应用、大数据分析等多种场景,具有显著优势。
- 安装 MongoDB(Windows / macOS / Linux / Docker) 本章节详细介绍在 Windows、macOS、Linux 和 Docker 环境下安装 MongoDB 的具体步骤,帮助用户快速搭建数据库环境。
- 使用 MongoDB Compass 和 MongoDB Shell 本章节介绍如何使用 MongoDB 官方的图形化管理工具 Compass 和命令行工具 MongoDB Shell,帮助用户高效管理和操作数据库。
- 数据库与集合的概念 本章节介绍 MongoDB 中数据库和集合的基本概念,帮助理解其数据组织结构及管理方式。