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

如何使用MongoDB聚合查询两列唯一值并将其他字段分组为数组

MongoDB聚合操作实现方案

你可以直接使用以下聚合语句完成需求:

db.你的集合名称.aggregate([
  // 联合分组阶段
  {
    $group: {
      _id: {
        categoryCode: "$categoryCode",
        categoryName: "$categoryName"
      },
      cat_type: { $push: "$cat_type" }
    }
  },
  // 输出结构调整阶段
  {
    $project: {
      _id: 0,
      categoryCode: "$_id.categoryCode",
      categoryName: "$_id.categoryName",
      cat_type: 1
    }
  }
])

补充说明

  • 如果需要对同分组内重复的cat_type值去重,将$push替换为$addToSet即可。$push会保留分组内所有cat_type的原始值(含重复项),$addToSet会自动去重后生成数组。
  • 上述语句执行后输出的结构和你给出的预期格式完全匹配。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 21:06:03