我有一个Cloudant数据库,其中包含以下文档
{"test": 1, "value": 10}
{"test": 1, "value": 20}
{"test": 2, "value": 100}
{"test": 2, "value": 200}
我想创建一个视图,该视图获取给定测试的所有值的总和。所以视图将包含
{"rows":[
{"key":1,"value": 30}
{"key":2,"value": 300}
]}
(即30 = 10 + 20和300 = 100 + 200)
在Cloudant中执行此操作的正确方法是什么?
到目前为止,我已尝试过以下映射器
function (doc) {
emit(doc.test, doc.value);
}
使用内置的_sum
缩减器,但这会产生
{"rows":[
{"key":null,"value":330}
]}
答案 0 :(得分:0)
尝试在reduce上应用group = true param。
"如果要返回每个键的结果,请使用group = true。 group = true对于仅map或reduce = false视图无效,如果您尝试对非缩小视图进行分组,则会出现错误。"