我有一个MongoDB聚合查询,可以在RoboMongo shell中正常工作并得到正确的结果。
RoboMongo Shell查询:
db.getCollection('application-filters').aggregate(
{
$match: {
"StatusName" : {$in:["Rejected","Expired"]}
}},
{
$group:{
_id: "$StatusName", COUNT : { "$sum":1}
}},
{
$project: {
StatusName:1,
Count : "$COUNT"
}
},
{
$sort:{
Count:-1
}
}
)
我已经复制并粘贴了相同的查询,并尝试使用nodejs mongodb 2.2驱动程序执行。但它没有返回任何结果。
以下是JavaScript代码:
module.exports = mPool => {
return {
getcountbyStatus (countstatusfilterParams) {
console.log(countstatusfilterParams)
return mPool.collection('application-filters').aggregate(
{
$match: {
'StatusName': {$in: ['Rejected', 'Expired']}
}},
{
$group: {
_id: '$StatusName', COUNT: {'$sum': 1}
}},
{
$project: {
StatusName: 1,
Count: '$COUNT'
}
},
{
$sort: {
Count: -1
}
}
).toArray(function (err, data) {
if (!err) {
console.log(data)
}
})
}
}
}
任何帮助都将不胜感激。
谢谢。