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

如何将指定SQL语句转换为MongoDB查询语言,一次性查询Acount与Bcount

SQL转MongoDB查询实现

你要转换的SQL是统计Table1中isA=1的记录数(Acount)和isB=1的记录数(Bcount),对应的MongoDB聚合查询可以用$group阶段结合$sum和$cond操作符实现,一次性返回两个统计值:

db.Table1.aggregate([
  {
    $group: {
      _id: null, // 全局聚合,不按字段分组
      Acount: {
        $sum: {
          $cond: [{ $eq: ["$isA", 1] }, 1, 0]
        }
      },
      Bcount: {
        $sum: {
          $cond: [{ $eq: ["$isB", 1] }, 1, 0]
        }
      }
    }
  }
])

逻辑说明

  • $group: {_id: null}:表示对整个集合的数据进行聚合统计,不按任何字段分组。
  • $cond:实现类似SQL中case when的条件判断,当目标字段等于1时返回1,否则返回0,再通过$sum累加得到符合条件的总数量,对应SQL里的条件计数逻辑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 20:14:53