使用MapReduce时,每个结果文档的结构都是这样的
{
"_id" : 123
"value" : 99.95
}
有没有办法指定其他字段名称?例如。 _id -> sku
,value -> price
。
的MapReduce:
db.runCommand({
mapreduce : "myCollection",
map : function () {
emit( this.sku, this.price );
},
reduce : function (key, values) {
var result = Number.MAX_VALUE;
values.forEach(function(value) {
if (result > value) {
result = value;
}
});
return result;
},
out : { replace : "myReduceTest" }
});
答案 0 :(得分:1)
我不相信有,我想知道你为什么需要改变它们?使用map / reduce,您可以返回“_id”和“value”的对象,这些对象可以包含您希望的任何名称的字段。请参阅http://www.mongodb.org/display/DOCS/MapReduce
上的示例