0
感谢您提前给予帮助。确定元素在mapreduce之前出现在mongodb集合中的次数
我有一个MongoDB的集合
{
id: 12345,
userid: 9876,
CompName: PC-537,
LogonTime: 2015-07-1,
SessionName: Session1
}
什么,我试图做的是MapReduce的数据库瘫痪,在那里我可以看到有多少会话分配给每个补偿的名字,所以代替补偿以下名称多次出现在集合中,它会出现一次,与它关联的会话显示为值
有人可以给我一些指示吗?我知道如何在使用数字(例如降雨量:9毫米)时减少地图的数量(如降雨量:9毫米),但是当它的文本我怎么能找到减少的时候,PC只会出现一次,并且要么列出他们所有的会话和总数他们有的会议。
我至今尝试过如下
var mapFunc = function() {
emit(this.CompName, this.SessionName);
};
var reduceFunc = function(keyComp, keySession) {
return Array.sum(keySession);
};
db.compcollection.mapReduce(
mapFunc,
reduceFunc,
{ out: "comp2" }
)
这给我的数据库还原到会话名称不是COMPNAME的结果,也没有给出一个数字计数。所以基本上它给了我一个SESSIONNAME,而不是相反相关联的所有机器(这是我想要什么)
能有人请帮助:)