【发布时间】:2017-03-12 10:38:09
【问题描述】:
我有一个类似这样的架构:
{
_id: <objectid>
customer: <objectid>
employee: <objectid>
date: <Month/day/year>
amount: <Number>
}
使用 Angular,我正在尝试制作一个页面,该页面可以提取该数据并为每天构建单独的表格。所以就像我昨天会有一个标签,它会打开一个表格的视图,其中列出了我所有的员工以及他们当天的总和。像这样的:
[{
date: 10/29/2019
dataFromThisDate: [
{
employee: <name>
sumAmount: <sum(amount for this date)>
list: [<array of all of the transaction _ids
},
{
employee: <name 2>
//etc
}]
},
{
date: 10/30/2019
dataFromThisDate: //etc
}]
据我所知,基本上是:
MyCollection.aggregate(
[{
$group: {
_id: "$date"
}
}],function(err, result) { //blah }
)
但我什至不确定如何进行嵌套分组(首先按日期,然后按该日期的员工)。仔细想想,感觉就像我必须按日期分组,然后将所有数据传递到新的分组管道?
抱歉,我没有更多我尝试过的东西,整个聚合对我来说是全新的,我找不到与我想要学习的东西足够相似的好例子.我查看了 mongodb 的 api 文档,我了解了他们的基本示例并使用了它们,但我只是很难想出如何做更复杂的示例。
【问题讨论】:
标签: javascript mongodb mongoose mongodb-query aggregation-framework