You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MongoDB如何查询去重字段并统计文档内嵌数组的元素数量

MongoDB查询解决方案

你可以通过MongoDB自带的聚合管道能力实现需求,以下是适配你给出示例和预期结果的查询语句:

db.你的集合名.aggregate([
  // 第一步:按categoryCode分组实现去重
  {
    $group: {
      _id: "$categoryCode",
      // 提取分组内第一条数据的分类名称
      categoryName: { $first: "$categoryName" },
      // 统计分组内第一条数据的accessories数组长度
      accessoriesCount: { $first: { $size: "$accessories" } }
    }
  },
  // 第二步:调整返回字段的格式,符合预期结构
  {
    $project: {
      _id: 0,
      categoryCode: "$_id",
      categoryName: 1,
      accessoriesCount: 1
    }
  }
])

扩展说明

  • 如果你需要按categoryCode + categoryName的组合进行去重,只需要把$group阶段的_id值修改为{categoryCode: "$categoryCode", categoryName: "$categoryName"},同时调整$project阶段的categoryCode赋值逻辑即可
  • 如果你需要统计同一个分类下所有文档的accessories数组元素总个数,只需要把accessoriesCount的计算逻辑替换为{ $sum: { $size: "$accessories" } }即可

内容的提问来源于stack exchange,提问作者prabhakar srivastava

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 04:54:04