У меня есть коллекция поисков mongo. Каждый поиск имеет объект критериев, который может иметь любую комбинацию критериев. Так что-то вроде:Подсчет уникальных ключей - конвейер агрегации mongo
{
"_id": 1,
"criteria": {
"state": ["NY", "IL"]
...
},
...
}
Я строй агрегации Монго трубопровода, и мне интересно, как проецировать только ключи, чтобы я мог их сосчитать.
До сих пор первый шаг моего трубопровода:
db.userSearch.aggregate([
{ "$project": { "criteria":1 } },
...
])
Это возвращает все критерии объектов правильно, теперь мне нужно проецировать ключи каким-то образом. У кого-нибудь есть идеи?
Edit: желаемый результат: {"state":20, "balance":5, "geolocation":10, ...}
Вы можете использовать $ размотать https://docs.mongodb.com/manual/reference/operator/aggregation/unwind/ – Euclides
Объект критериев не является массивом, хотя, и ни один не это суб объекты –
Может вам добавить ожидаемый результат в сообщение? – Veeram