【发布时间】:2020-05-13 05:33:31
【问题描述】:
我遇到了一个问题,我想查询过去六个月的日期。
我有一个场景,我想要每周的数量总和,我已经实现了,但我想进行一个查询,可以找到从当前日期到过去六个月日期的日期,那么我如何在 mongodb 中实现它。
任何帮助将不胜感激。
db.rxTable.aggregate([
{
$addFields: {
rxDate: {
$dateFromString: {
dateString: "$rxDate"
}
},
quantity: {
$toInt: "$quantity"
}
}
},
{
$group: {
_id: { $week: '$rxDate' },
data: {
$addToSet: "$$ROOT",
},
sales: {
$sum: "$quantity"
}
}
}
])
我还在下面添加了我的查询。
例如,我在控制台中的 javascript 中尝试过这种场景,但我希望在 mongodb 中使用它。
我在这里发布我在控制台中尝试过的示例。
var sixMonths = 1.577e+10;
sixMonths
15770000000
Date.now()
1589292791593
var current = Date.now();
undefined
current-sixMonths
1573522803658
Date(current-sixMonths)
"Tue May 12 2020 19:43:45 GMT+0530 (India Standard Time)"
Date(current-sixMonths)
"Tue May 12 2020 19:44:21 GMT+0530 (India Standard Time)"
new Date(current-sixMonths)
Tue Nov 12 2019 07:10:03 GMT+0530 (India Standard Time)
new Date()
Tue May 12 2020 19:55:19 GMT+0530 (India Standard Time)
【问题讨论】:
标签: mongodb mongodb-query aggregation-framework