我不知道這是否真的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);
}