【问题标题】:How to count number of users grouped by month (of date field) in MongoDB? [duplicate]如何计算 MongoDB 中按月(日期字段)分组的用户数? [复制]
【发布时间】:2019-11-01 02:29:34
【问题描述】:

我有一个这样设置的集合:

{
   _id: uuid.v4(),
   startDate: Date(),
}

我对此没有任何想法。我正在寻找的最终结果是这样的(total日期内的用户数):

[
  {
    date: "2018-12",
    total: 12
  },
  {
    date: "2019-01",
    total: 32
  },
  {
    date: "2019-02",
    total: 23
  },
  ...
]

任何帮助将不胜感激。谢谢

【问题讨论】:

标签: mongodb aggregation-framework


【解决方案1】:

试试这个查询

db.collectionName.aggregate([
    {
        $project:{
             period:{$dateToString:{format:"%Y-%m",date:"$startDate"}}
         }
    },{
        $group:{ _id : {date : "$period"},count:{$sum:1}}
    },
      { $sort : { _id : 1 } }
]);

【讨论】:

    猜你喜欢
    • 2015-11-18
    • 1970-01-01
    • 1970-01-01
    • 2017-12-08
    • 2017-12-08
    • 1970-01-01
    • 2021-06-22
    • 2013-11-28
    • 2014-10-15
    相关资源
    最近更新 更多