MongoDB - 无效的运算符 - Agregation

时间:2016-04-04 20:58:23

标签: mongodb aggregation-framework

所以我有以下聚合,我收到错误无效的运算符$$ event.info。

db.days.aggregate([
    { 
        $match : { 'day' : 'March_1'}
    },
    {
        $project: 
        {
            _id:0,
            day: 1,
            events:
            {
               $filter:
               {
                    input: '$events',
                    as: 'event',
                    cond: 
                    {
                        $and: 
                        [
                            {
                                $eq: ['$$event.year', '2002']
                            },
                            {
                                '$$event.info' : {$regex: '.*peseta.*'}
                            }
                        ]
                    }
                }
            }  
        }
    }
])

Event是一个包含

类型对象的数组
{
    year : "x"
    info : "y"
}
你能帮我解释一下吗?

提前致谢!

1 个答案:

答案 0 :(得分:-1)

您的预期产量是多少? 如果你只是想匹配你不需要聚合框架。只需使用find   db.days.find({'day' : 'March_1',event :{$elemMatch :{'year', '2002',info' : {$regex: '.*peseta.*'}}})