我有一个简单的查询,当我查询公共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
有人可以解释我的汇总管道有什么问题吗?
由于
答案 0 :(得分:0)
小组赛阶段存在一个小问题;小组阶段(“作者”)中字段的名称应以美元符号为前缀,例如$ group文档中的this example。
尝试将小组阶段更新为以下内容:
{ $group: { "_id": "$author", "itemcount": { "$sum": 1 } } },
答案 1 :(得分:0)