我正在尝试使用CouchDB作为我的数据库。当我想从50000条记录中得到最大值时,我遇到了问题。找到最大值的最佳解决方案是什么?
我使用这个约简函数:
function (key, values, rereduce) {
var largest = Math.max.apply(Math, key);
return largest;
}这是我的地图功能:
function(doc) {
if(doc.TYPE=="customer"){
emit(doc._id.substring(0,8), doc._id);
}
}谢谢
发布于 2014-03-21 14:37:49
在编写减缩函数时,您不应该忘记说明参数。但是,您甚至不需要它,原因有两个:
1)在查询视图并获取最大项时,只需使用descending=true即可。(这样你就不需要减缩一步了)
2)您可以使用内建约函数 _stats并获得最大值w/o,编写自己的约简函数。
仅使用map函数w/o的优点是,不仅可以获得最大值,还可以获得包含该值的文档。
https://stackoverflow.com/questions/22512721
复制相似问题