MongoDB 2.4大小" $ addToSet"结果

时间:2016-02-18 11:38:52

标签: mongodb

我有一个MongoDB 2.4的聚合查询(我们不能使用另一个版本:()。

有一点,我需要在一个组中创建的集合的大小或数量:

{
    $group: {
        _id: {
            type: '$type',
            week: '$week',
            day: '$day',
            year: '$year',
            hour: '$hour'
        },
        minutes: { 
            $addToSet: "$minutes"
        },
        sum_online: {
            $sum: "$online" 
        },
        sum_offline: {
            $sum: "$offline" 
        },
        sum_expired: {
            $sum: "$expired" 
        },
        min_date: {
            $min: "$date" 
        },
        max_date: { 
            $max: "$date" 
        }
    }
},
{
    $project: {
        day: "$_id.day",
        week: "$_id.week",
        year: "$_id.year",
        type: "$_id.type",
        hour: "$_id.hour",
        measurements: { $size: "$minutes" },
        sum_online: "$sum_online",
        sum_offline: "$sum_offline",
        sum_expired: "$sum_expired",
        min_date: "$min_date",
        max_date: "$max_date"
    }
},

关于"分钟"。 addToSet的结果将是:

[
    0,
    10,
    20,
    30,
    40,
    50
]

这是六个项目,我需要在我的投影中设置的大小,但版本2.4没有我可以使用的$ size函数。 measurements: { $size: "$minutes" },不起作用。我收到这个错误:

Thu Feb 18 12:50:03.214 aggregate failed: {
"errmsg" : "exception: invalid operator '$size'",
"code" : 15999,
"ok" : 0

有没有人知道如何获得该套装的大小?

0 个答案:

没有答案