如何在 Cloudant map/reduce 中进行基本的索引求和?
How do I do a basic indexed sum in Cloudant map/reduce?
我有一个 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
reducer,但这给了
{"rows":[
{"key":null,"value":330}
]}
尝试在您的 reduce 上应用 group=true 参数。
"If you want to return results per key, use group=true. group=true is an invalid for a map-only or reduce=false view, you will get an error if you try to group a non-reduced view."
我有一个 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
reducer,但这给了
{"rows":[
{"key":null,"value":330}
]}
尝试在您的 reduce 上应用 group=true 参数。
"If you want to return results per key, use group=true. group=true is an invalid for a map-only or reduce=false view, you will get an error if you try to group a non-reduced view."