MongoDB 错误:管道阶段规范对象必须仅包含一个字段

问题描述 投票:0回答:1

我是 mongodb 新手,正在尝试聚合。

 db.aggregate([
  { '$match': {} },
  {
    '$group': { _id: [Object] },
    '$project': {
      resource_subcategory: '$_id.resource_subcategory',
      resource_usage: 1
    }
  }
])

我收到错误:

A pipeline stage specification object must contain exactly one field.

我在SO中找不到很好的原因解释。欢迎分享你对这个话题的看法

mongodb aggregation-framework
1个回答
0
投票

应该是这样的:

db.aggregate([
  { '$match': {} },
  { '$group': { _id: [Object] } },
  { '$project': {
      resource_subcategory: '$_id.resource_subcategory',
      resource_usage: 1
    }
  }
])

但是

{ '$match': {} }
毫无意义,它会选择所有文档。你可以跳过它。

© www.soinside.com 2019 - 2024. All rights reserved.