У меня есть данные, как показано ниже в mongodb:
{
"name":["apple", "banana", "oranges", "grapes"]
},
{
"name":["apple", "banana"]
},
{
"name":["apple", "oranges"]
},
{
"name":["oranges", "banana"]
},
{
"name":["grapes", "banana"]
}
Я хочу объединить и получить результат следующим образом: -
{
"apple": 3,
"banana":4,
"grapes": 3,
"oranges": 3
}
Я пробовал что-то вроде этого: -
db.collection.aggregate([
{"$unwind": "$name" },
{"$group": {"_id": "$name", "count": { "$sum": 1 }}}
]]
В результате получаются точные данные, некоторые уникальные элементы упускаются.Не уверен, что я сделал не так.