您想向 发送 POST 请求/appdata/:appKey/:collectionName/_group
,其中 :appkey 是应用程序 ID, :collectionName 是您要在其上运行聚合的特定集合。
然后在正文中,您要指定 map/reduce 参数:
{
"key": {
"lastName":true
},
"initial": {
"count": 0
},
"reduce": "function(doc,out){ out.count++;}",
"condition": {
"age": { "$gt":31 }
}
}
在此示例中,“ key
”指定将被聚合的实体列名称。大多数时候你只想做一个,但你可以指定多个。" initial
" 种子减少起始值,因为这是一个计数示例,它从零开始。“ reduce
”是一个javascript函数;它传入实体 ( doc
) 和我们的返回对象 ( out
)。如果你想总结每个人的年龄而不是人数,它会像:out.count += doc.age
. 最后你可以指定一个可选的“ condition
”;这是一个使用查询语言的过滤器,只有满足条件的实体才会被评估。
作为参考,这里是 MongoDB 聚合文档。您应该能够在那里列出的所有内容http://www.mongodb.org/display/DOCS/Aggregation
查询语法的 Kinvey 文档:http://docs.kinvey.com/rest-filtering.html (请记住,这是 body 对象中条件的一部分,而不是 POST uri)。
如果您需要它,这里有一个关于将字典转换为 JSON 的问题。如何在 C# 中将字典转换为 JSON 字符串?