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

如何在MongoDB的聚合$project阶段实现字符串首字母大写?

解决MongoDB聚合中首字母大写其余小写的字段转换问题

现有MongoDB文档:

{
    name: "BRIAN"
}

目标格式:

{
    name: "Brian"
}

你之前尝试的聚合操作仅能将字符串转为全小写:

{
    $project: {
       name: { $concat: [ { $toLower: '$name' } ]}
    }
}

可以在同一个$project阶段完成首字母大写、其余小写的转换,通过MongoDB字符串操作符组合实现:

{
  $project: {
    name: {
      $concat: [
        { $toUpper: { $substrCP: ["$name", 0, 1] } },
        { $toLower: { $substrCP: ["$name", 1, { $strLenCP: "$name" }] } }
      ]
    }
  }
}

代码说明:

  • $substrCP: ["$name", 0, 1]:提取字符串的第一个字符
  • $toUpper:将提取的首字符转为大写
  • $substrCP: ["$name", 1, { $strLenCP: "$name" }]:提取从第2个字符开始到字符串末尾的全部内容
  • $toLower:将剩余字符转为全小写
  • $concat:把大写首字母和小写剩余部分拼接成目标格式的字符串

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 15:20:22