У меня есть структура mongodb, как показано ниже:
{
"_id":"123456789",
"name":"item name 1",
"variants":[
{
"size":"150 ml",
"filters":[
{"name":"filter 1",
"value":"value 1"},
{"name":"filter 2",
"value":"value 2"}
]
}
]
},
{
"_id":"987654321",
"name":"item name 1",
"variants":[
{
"size":"200 ml",
"filters":[
{"name":"filter 1",
"value":"value 2"},
{"name":"filter 2",
"value":"value 1"}
]
}
]
}
Теперь я хочу количество фильтров с группой по имени и значению. т.е.
[{filter 1:[{value:value 1, count:10}, {value: value 2, count:5}]},
{filter 2:[{value:value 1, count:5}, {value: value 2, count:2}]}
или
[{name:filter 1, value:value 1, count:10}, {name:filter 1, value:value 2,
count:5}]
как этого добиться с помощью агрегирования mongodb и группового запроса?