我有一个非常基本的Mongoose聚合查询
Transaction.aggregate().match({
timestamp : {
$gt : time_lower_bound,
$lt : time_upper_bound
}
}).group({
_id : '$currencyFrom',
count : {
$sum : 1
}
}).sort({
count : -1
})
我想让_id动态化。但我试过了
var field = job.data.field;
Transaction.aggregate().match({
timestamp : {
$gt : time_lower_bound,
$lt : time_upper_bound
}
}).group({
_id : '$' . field,
count : {
$sum : 1
}
}).sort({
count : -1
})
并且它不会返回正确的数据,而是返回
[ { _id: null, count: 473 } ]
所以我在这里遗漏了一些明显的东西。
答案 0 :(得分:2)
Javascript使用加号进行连接,而不是句号。
假设field
是currencyFrom
之类的字符串,请替换
_id : '$' . field,
与
_id : '$' + field,