У меня есть коллекция с такой структурой:
db.mycollection.find({_id: 1})
{
_id: 1,
attribute: [
{
sub_id: abc,
},
{
sub_id: djxk,
}
]
}
То, что я сейчас хочу, это объединенная строковая запятая, разделенная всеми sub_ids над всеми документами коллекции. {sub_id: "abc, djxk"}
Что я пробовал:
db.mycollection.mapReduce( function() { emit("mycollections", this._id); }, function(key, values) { return values.join(", ")}, {out: "sub_ids"})
Но результат не такой, как ожидалось:
{
"result" : "sub_ids",
"timeMillis" : 652,
"counts" : {
"input" : 3837,
"emit" : 3837,
"reduce" : 40,
"output" : 1
},
"ok" : 1
}
Что такое правильные функции и параметры?
Спасибо