首页 > 解决方案 > 如何计算目前我们一周的每日订单?

问题描述

我在 mongodb 上保存了类似这样的订单:

_id: 5feb0b6cc0ea5745f8d931e3
...
totalPrice: 2935.02
createdAt:2020-12-25T10:56:44.798+00:00

如果今天是 25/01/2021,我需要计算本周每天的订单数量。

例子:

25/01/2021: 5 (orders)
26/01/2021: 21 (orders)
27/01/2021: 24 (orders)
...
31/01/2021: 22 (orders)

谢谢 :)

标签: node.jsmongodbmongoose

解决方案


应该是这个:

{
  $group: {
     _id: {
        $dateFromParts: {
           'isoWeekYear': { $isoWeekYear: "$createdAt" }, 'isoWeek': { $isoWeek: "$createdAt" }
        }
     }, 
     orders: { $sum: 1 }
  }
}

推荐阅读