0

我需要在 mongo 查询中使用 nodejs 中的字符串值。但是在 [] 中传递这些变量时,我得到了一个未定义的对象。但是,将实际值放入确实给出了正确的答案

var myquery = [
    { 
        $match: {
            time: {
                $gte: [start_time],
                $lt: [end_time]
            },
            payeeFsp : [dfsp_given]
        }
    },   
    {
        $group: {
            _id: null,
            total: {$sum:"$amount"}
        }
    }
];
dbo.collection("transaction_history").aggregate(myquery).toArray(function(err, res) {
    if (err) throw err;
    console.log(res);
    db.close();
});
4

1 回答 1

0

为什么要将变量放入数组中?

我认为查询应该是这样的

var myquery = [
    { 
        $match: {
            time: {
                $gte: start_time,
                $lt: end_time
            },
            payeeFsp : dfsp_given
        }
    },   
    {
        $group: {
            _id: null,
            total: {$sum:"$amount"}
        }
    }
];
于 2019-07-19T11:21:29.477 回答