我如何使用mapReduce将以下SQL查询转换为mongoDB
SELECT mobile, SUM( amount ),count(mobile) as noOfTimesRecharges
FROM recharge
WHERE recharge_date between '2015-02-26' AND '2015-03-27'
GROUP BY mobile
having noOfTimesRecharges > 0 and noOfTimesRecharges < 5
Run Code Online (Sandbox Code Playgroud)
我试过了
db.users.mapReduce(
function(){
emit(this.mobile,this.amount);
},
function(k,v){
return Array.sum(v)
},
{
query:{
recharge_date:{$gte:ISODate("2014-06-17"),$lte:ISODate("2014-06-20")}
},
out:"one_month_data"
}).find();
Run Code Online (Sandbox Code Playgroud)
这给了我结果而不是计数。
javascript mapreduce mongodb mongodb-query aggregation-framework