You need to enable JavaScript to run this app.
最新活动
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

使用MongoDB的聚合框架对嵌套数组进行分组和投影

使用MongoDB的聚合框架对嵌套数组进行分组和投影的解决方法如下:

假设我们有以下的文档结构:

{
  "_id": 1,
  "name": "John",
  "scores": [
    {
      "subject": "math",
      "score": 90
    },
    {
      "subject": "science",
      "score": 85
    }
  ]
},
{
  "_id": 2,
  "name": "Jane",
  "scores": [
    {
      "subject": "math",
      "score": 95
    },
    {
      "subject": "science",
      "score": 80
    }
  ]
}

我们可以使用聚合框架的操作符 $unwind 来展开嵌套数组,并使用 $group 进行分组和投影操作。

以下是一个使用MongoDB的聚合框架对嵌套数组进行分组和投影的代码示例:

db.collection.aggregate([
  // 展开嵌套数组
  {
    $unwind: "$scores"
  },
  // 分组并计算每个学科的平均分
  {
    $group: {
      _id: "$scores.subject",
      averageScore: { $avg: "$scores.score" }
    }
  },
  // 重新构造文档结构
  {
    $project: {
      _id: 0,
      subject: "$_id",
      averageScore: 1
    }
  }
])

以上代码将返回如下结果:

[
  {
    "subject": "math",
    "averageScore": 92.5
  },
  {
    "subject": "science",
    "averageScore": 82.5
  }
]

这个结果表示了每个学科的平均分数。

请注意,为了使用聚合框架,你需要将上述代码放在一个聚合管道中进行执行。

本文内容通过AI工具匹配关键字智能整合而成,仅供参考,火山引擎不对内容的真实、准确或完整作任何形式的承诺。如有任何问题或意见,您可以通过联系service@volcengine.com进行反馈,火山引擎收到您的反馈后将及时答复和处理。
展开更多
面向开发者的云福利中心,ECS 60元/年,域名1元起,助力开发者快速在云上构建可靠应用

社区干货

【新增功能】网关配置功能—连接本地私有化部署应用

无论您选择何种连接,所选连接器中可用的动作和操作都是相同的。本地应用程序连接需要指向网关配置中的特定连接配置文件。目前已支持的网关配置应用有:MySQL数据库、PostgreSQL、Oracle、MongoDB 。... 提供快速与集简云平台中的应用进行连接的能力,您可以将您的软件接口上线到集简云平台轻松实现数百款应用软件的数据互通。您也可以将集简云的集成能力嵌入到您的软件系统中,将数百款软件的集成能力变成您产品的功能...

特惠活动

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

域名注册服务

cn/top/com等热门域名,首年低至1元,邮箱建站必选
1.00/首年起32.00/首年起
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

使用MongoDB的聚合框架对嵌套数组进行分组和投影-优选内容

功能特性
文档数据库 MongoDB 版是否支持嵌套文档?支持。例如下述示例中的内容即为嵌套文档。 javascript { "_id": ObjectId("66ee651d8d1acb8a892c****"), "item":"journal", "qty":25, "size":{ "h":14, "w":21, "uom":"cm" }, "status":"A"}文档数据库 MongoDB 版如何处理节点故障?文档数据库 MongoDB 版提供了副本集和分片集群两种架构,关于产品架构的更多信息,请参见产品架构。每种架构的实...
常见问题概览
本文汇总了文档数据库 MongoDB 版的常见问题。 实例管理文档数据库 MongoDB 版和 MongoDB 有什么关系? 文档数据库 MongoDB 版提供何种实例规格 在同一账号的同一地域下,是否支持设置同名的实例? 最多支持创建多少个... 账号和权限文档数据库 MongoDB 版当前开放了哪些角色权限? 实例创建好后,怎么已经有账号了? 如何创建 MongoDB 数据库账号? 如何为子用户进行跨服务访问授权? 如何修改 MongoDB 数据库账号的密码? 当连接串中账号密...
【新增功能】网关配置功能—连接本地私有化部署应用
无论您选择何种连接,所选连接器中可用的动作和操作都是相同的。本地应用程序连接需要指向网关配置中的特定连接配置文件。目前已支持的网关配置应用有:MySQL数据库、PostgreSQL、Oracle、MongoDB 。... 提供快速与集简云平台中的应用进行连接的能力,您可以将您的软件接口上线到集简云平台轻松实现数百款应用软件的数据互通。您也可以将集简云的集成能力嵌入到您的软件系统中,将数百款软件的集成能力变成您产品的功能...
V2.42.0
实现页面嵌套效果;也可通过鼠标圈选标签页内容,批量编辑 支持图层列表,可以快速在图层列表上查看、删除、拖拽调整图层顺序、隐藏控件操作 优化响应效率,移动控件也更丝滑、精准 支持隐藏图表右上角的工具条和图... MongoDB支持字段变更时的增删支持 五.数据源支持 【新增】数据源支持飞书多维表格 六.项目中心与控制台 【新增】指标播报功能支持数据的文字播报功能,可以配置已保存图表内的指标,为其配置播报句式和内容【新增】访...

使用MongoDB的聚合框架对嵌套数组进行分组和投影-相关内容

特惠活动

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

域名注册服务

cn/top/com等热门域名,首年低至1元,邮箱建站必选
1.00/首年起32.00/首年起
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

产品体验

体验中心

云服务器特惠

云服务器
云服务器ECS新人特惠
立即抢购

白皮书

一图详解大模型
浓缩大模型架构,厘清生产和应用链路关系
立即获取

最新活动

爆款1核2G共享型服务器

首年60元,每月仅需5元,限量秒杀
立即抢购

火山引擎增长体验专区

丰富能力激励企业快速增长
查看详情

数据智能VeDI

易用的高性能大数据产品家族
了解详情

一键开启云上增长新空间

立即咨询