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

MongoDB聚合管道中如何重命名字段?避免全量指定字段

MongoDB聚合管道中重命名字段的高效方法

当需要在聚合管道中重命名字段但又不想手动列出所有其他字段时,有两种更高效的方案:

方案一:$addFields + $unset组合(兼容所有MongoDB版本)

先通过$addFields新增目标字段并赋值为原字段的值,再用$unset移除原字段,所有原有字段都会被保留:

[
  // ... 其他聚合阶段
  { $addFields: { sale: "$sales" } },
  { $unset: "sales" }
]

方案二:$rename聚合阶段(MongoDB 4.2+)

MongoDB 4.2及以上版本提供了专门的$rename阶段,直接指定原字段名和新字段名即可完成重命名,自动保留所有其他字段,写法更简洁:

[
  // ... 其他聚合阶段
  { $rename: { "sales": "sale" } }
]

额外说明

$rename同样支持嵌套字段的重命名,比如要重命名嵌套在info下的sales字段,可以这样写:

{ $rename: { "info.sales": "info.sale" } }

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 21:45:34