mongodb查询不会聚合和排序

时间:2017-12-29 22:27:49

标签: mongodb aggregate

我有一个简单的查询,当我查询公共mongodb server时,我会给出意想不到的结果,

mongodb://steemit:steemit@mongo1.steemdata.com:27017/SteemData

db.getCollection('Posts')
.aggregate([
        { $match: { "created" : { $gte: ISODate("2017-10-01T00:00:00.000Z"), $lt: ISODate("2017-10-30T00:00:00.000Z") } } },
        { $group: { "_id": "author", "itemcount": { "$sum": 1 } } },
        { $sort: { "itemcount": -1 } }
])

我试图计算10月份作者的文章数量。

我希望看到类似的结果集,

Bob 10
Joe  9
Sam  3
Tim  1
相反,我得到了,

author 23

有人可以解释我的汇总管道有什么问题吗?

由于

2 个答案:

答案 0 :(得分:0)

小组赛阶段存在一个小问题;小组阶段(“作者”)中字段的名称应以美元符号为前缀,例如$ group文档中的this example

尝试将小组阶段更新为以下内容:

    { $group: { "_id": "$author", "itemcount": { "$sum": 1 } } },

答案 1 :(得分:0)

似乎它与查询无关......

这个在下午5:32运行(忽略单引号,我试过两个) enter image description here 然后在下午5:41分钟后几分钟 enter image description here