2
Я есть следующий документ коллекции:Выбрать все различные поддокументы
{ "_id" : ObjectId("568dc77473bf57f465da61dd"), "name" : "Rama", "items" : [ { "id" : 40, "name" : "Botella" }, { "id" : 30, "name" : "Frasco" } ] }
{ "_id" : ObjectId("568dc78873bf57f465da61de"), "name" : "Pepe", "items" : [ { "id" : 40, "name" : "Botella" }, { "id" : 29, "name" : "Cigarrillo" } ] }
Каждый документ есть набор элементов. Каждый элемент является документом. Таким образом, у меня есть список всех отдельных элементов на коллекции:
{ "id" : 40, "name" : "Botella" },
{ "id" : 29, "name" : "Cigarrillo" },
{ "id" : 30, "name" : "Frasco" }
С $ размотать я получен один пункт за каждый документ:
db.test.aggregate([{'$unwind': '$items'}, {'$project': {'items.id': 1, 'items.name': 1, '_id': 0}}])
{ "items" : { "id" : 40, "name" : "Botella" } }
{ "items" : { "id" : 30, "name" : "Frasco" } }
{ "items" : { "id" : 40, "name" : "Botella" } }
{ "items" : { "id" : 29, "name" : "Cigarrillo" } }
Но теперь, я не знаю, как получить отчетливое " Предметы'. Я делаю первые шаги с MongoDB.
Любые идеи?
использование простой '' distinct' как db.collection.distinct ("вещи") ' – Yogesh
Great !!! Прекрасно работает :) Спасибо. Отправьте ответ! – ramiromd
Возможный дубликат [Отдельные значения определенного поля из MongoDB] (http://stackoverflow.com/questions/21193478/distinct-values-of-a-particular-field-from-mongodb) – styvane