MongoDB语法错误:聚合和分组的正确语法是什么?

时间:2019-01-17 03:48:22

标签: mongodb

我正在尝试使用Aggregate和$ group进行平均。

但是我遇到此错误“错误:第5行:意外的令牌}”

我正在努力找到正确的支架。感谢任何人都可以提供帮助。

db.db1.aggregate([
        {$match:{"budget":"medium"}},
        {$group:{
            "_id":{"budget":"$budget"},
            "AvgBirthYear":{$avg:{"$birth_year"}}
                }
         }
         ])

我的原始数据就是这样Image

2 个答案:

答案 0 :(得分:0)

$avg:{"$birth_year"}无效,您可能是说$avg: "$birth_year"

而且,您只匹配"budget"字段为"medium"的文档,所以只能得到一组,这是有意的吗?

此外,"_id":{"budget":"$budget"}也可以,但可以简化为"_id": "$budget"

答案 1 :(得分:0)

尝试类似的方法:

def index
  @articles = Article.order(:slug)
end