Образцы документов:
{"_id": <id>, "name" : "Bread_1", "version" : 1 }
{"_id": <id>, "name" : "Bread_2", "version" : 1 }
{"_id": <id>, "name" : "Bread_1", "version" : 2 }
{"_id": <id>, "name" : "Bread_2", "version" : 2 }
{"_id": <id>, "name" : "Bread_3", "version" : 1 }
Требуемый вывод:
{"_id": <id>, "name" : "Bread_1", "version" : 2 }
{"_id": <id>, "name" : "Bread_2", "version" : 2 }
{"_id": <id>, "name" : "Bread_3", "version" : 1 }
Это вид группировки по имени и самой большой версии. Я пробовал этот запрос:
db.products.aggregate({$group: {_id: {name: '$name'}, version: {$max: '$version'}}});
Фактический вывод:
{"_id": {"name" : "Bread_1"}, "version" : 2 }
{"_id": {"name" : "Bread_2"}, "version" : 2 }
{"_id": {"name" : "Bread_3"}, "version" : 1 }
Хотя мне также нужен идентификатор документа. Что я пропустил в этом случае? Спасибо