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

MongoDB 3.7聚合管道中如何合并两个对象数组?

MongoDB聚合管道合并两个对象数组为一个data数组

你需要的合并操作可以直接用$concatArrays实现,它完全支持合并对象数组,之前的误解是多余的。直接在一个$addFields阶段里完成合并即可,避免分两次赋值导致覆盖:

{
  $addFields: {
    data: { $concatArrays: ["$services", "$sections"] }
  }
}

说明:

  • $concatArrays 接受任意数量的数组作为参数,会按传入顺序将它们的元素合并成一个新数组,不管数组元素是简单值还是复杂对象都适用。
  • 你之前分两次用$addFields给data赋值,后一次的操作会直接覆盖前一次的结果,这就是为什么无法得到合并后的数组。
  • MongoDB 3.7版本完全支持$concatArrays,该操作符从3.2版本就已引入,无需担心版本兼容问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 03:32:09