$ sum在$ lookup字段上的对象数

时间:2019-06-26 17:30:17

标签: javascript mongodb mongoose

我试图在MongoDB中使用$sum来总结数组中对象的数量。但是,即使有更多对象,它也仅返回0。我究竟做错了什么?

{
        $lookup: {
            from: "events",
            let: { user: "$_id" },
            pipeline: [
                { 
                    $match: { 
                        $expr: { 
                            $and: [
                                {$eq: ['$creator', '$$user']},

                            ],
                        },

                    }
                },
                {
                    $match: {
                            'createdAt': { 
                                $gte: moment(a).startOf('day').toDate(),
                                $lte: moment(b).startOf('day').toDate(),
                            }
                        }
                },
                { $project: { _id: 0, leads: 0, bookings: 0, sales: 0 } },
            ],
            as: "events"
        }
    },
    { 
        $addFields: { 
            countEvents: {$sum: "$events"}, 
        }
    }

1 个答案:

答案 0 :(得分:1)

我认为您需要使用$size而不是$sum