我不知道这是否真的rereduce,但这就是为什么我在这里。Couchdb rereduce的理解和总结
我有这样的:
“afrikan” ID:f6733302df85ac109397f4b6030005bf [1,2]
“afrikan” ID:f6733302df85ac109397f4b6030006d1 [1,3]
“afrikan” ID:f6733302df85ac109397f4b6030012b6 [2 ,4]
“中国” ID:f6733302df85ac109397f4b6030012eb 1
“中国” ID:f6733302df85ac109397f4b603001d 87 1
我知道如何计算总和,如果该值不是一个数组(如在 中文)。但我无法设法将数组中的值加起来,结果如下:“afrikan”“02,41,31,2”
还有一个问题:有没有办法将所有值不管 的钥匙?
查看代码:
function(doc) {
if(doc.food) {
emit(doc.food, doc.type);
}
}
减少代码:
function(keys,values,rereduce)
{
return sum(values);
}
谢谢了很多:)
UPDATE:
我发现CouchDB的答案。
下面是代码:
function(doc) {
if(doc.food) {
if(doc.type.length>1) {
doc.type.forEach(function(tag) {
emit(doc.food,tag);
});
}else {
emit(doc.food,doc.type);
}
}
}
减少:
function(keys,values) {
return sum(values);
}