急!!!在线等关于mongoose的mapReduce的问题
发布于 10 年前 作者 XadillaX 7199 次浏览 最后一次编辑是 8 年前 来自 问答
var o = {};
o.map = function() { emit(this.shopId, this.score); };
o.reduce = function(k, vals) { return { sum: Array.sum(vals), count: vals.length }; };
self.model.mapReduce(o, function(err, items) { 
    console.log(items);
});

怎么出来的结果跟我预想的不对?

 [ { _id: 52b6e1ac3bcdfc6e7fe491d4, value: 3 } ]

预想的不应该是这样的吗:

 [ { _id: 52b6e1ac3bcdfc6e7fe491d4, value: { sum: BLAHBLAH, count: BLAHBLAH } } ]
9 回复

emit第二个参数的值类型要和reduce的返回一样,比如你这个例子,map里应该类似: emit(this.shopId, {sum: xxx, count: xxx}); 好好研究下官方示例吧。

挖个坟不知道有人帮我讲解一下挖?。。今天我研究map就是做map的然后返回值给reduce的v,然后根据自己需求在reduce里foreach v什么的在设置一个返回值出去。 也就是map做过滤 过滤后的数据给reduce 在做返回

不错 自豪地采用 CNodeJS ionic

喂喂喂,不要挖坟喂,我自己看了羞愧死了 QwQQQQQQQQQQQQ

哈哈…顶上去…让更多人挖…哈哈

From Noder

哦!楼主,我看到了哦!继续搔搔你!

原来你也发过这样的帖子,哈哈

@luinlee -. - 那个时候初入坑

@xadillax 快指导一下2L,哈哈哈

回到顶部