【发布时间】:2015-10-28 15:49:07
【问题描述】:
我正在尝试基于 $in 在 mongodb 中聚合一个集合,该集合试图从路径中某处 Log_Dir 包含“/route_sanity/”的所有文档中获取聚合数据。 令人惊讶的是,这个查询不适用于 pymongo。 {请注意,我正在使用 'version by the user}
pipeline=[
{ '$match': { 'cgdvo_version' : version,'Dut_Name':'yvm','Log_Dir':{ '$in': ['/route_sanity/'] } } },
{ '$group': {
'_id':
'jid',
'PassVEVO': { '$sum': { '$cond' : [{ '$eq' : ['$Result', 'Pass']}, 1, 0]} },
'FailVEVO': { '$sum': { '$cond' : [{ '$eq' : ['$Result', 'Fail']}, 1, 0]} },
'ErrorVEVO': { '$sum': { '$cond' : [{ '$eq' : ['$Result', 'Error']}, 1, 0]} },
'TotalVEVO': { '$sum': 1 }
} },
{'$project':{'FailVEVO':1, 'PassVEVO':1,'ErrorVEVO':1,'TotalVEVO':1,'_id':0}}]
res= smokedb.command('aggregate','jid',pipeline=pipeline)
为了交叉检查,以下查询在 robomongo(mongodb 客户端)中运行良好
db.getCollection('jid').find({cgdvo_version : 'pub-20150614.2',Dut_Name:'yvm',Log_Dir:{ $in: [/route_sanity/] }})
请帮忙!提前致谢。
【问题讨论】:
标签: regex mongodb mongodb-query pymongo