Mongodb每个文档聚合多个组

时间:2014-09-01 23:17:17

标签: mongodb aggregation-framework

我正在使用mongodb聚合框架进行一些分析,我被困在这个特定的一个。

在英语中,我试图运行以下查询:

"查找给定时间范围内的平均5天计数。"

所以给定一个如下所示的数据集:

{
    :_id => BSONID,
    :date => ISO(DATE),
    :count => 3
},
{
    :_id => BSONID,
    :date => ISO(DATE),
    :count => 2
},
{
    :_id => BSONID,
    :date => ISO(DATE),
    :count => 9
}
...

我想要一个结果:

[
{:_id => "2014-145", :five_day_average_count => 3},#this is the average count from 2014-145 through 2014-149
{:_id => "2014-146", :five_day_average_count => 6},#this is the average count from 2014-146 through 2014-150
{:_id => "2014-147", :five_day_average_count => 4},#this is the average count from 2014-147 through 2014-151
...
]

_id是$ year和$ dayOfYear(这可以用$ concat实现)。

我完全有能力将数据分组并将数据分成长度为5天的组。困难在于单个数据点将同时分为5组。现在我可以运行5个聚合查询,每个查询都有一个单独的分组开始日期,但我更愿意运行单个查询以节省时间。

我真诚地希望我是愚蠢的,并且会发布一个简单的解决方案。

0 个答案:

没有答案
相关问题