Это то, что я использую для Elasticsearch, но я не могу найти, как это сделать с MongoDB.
Вот коллекция животных:
[
{ kind: "Dog", owner: "John", name: "Max" },
{ kind: "Dog", owner: "John", name: "Buddy" },
{ kind: "Dog", owner: "John", name: "Cooper" },
{ kind: "Cat", owner: "John", name: "Charlie" },
{ kind: "Dog", owner: "Peter", name: "Jack" },
]
Вотрезультат, который я ожидаю:
{
Dog: {
John: [
{ kind: "Dog", owner: "John", name: "Max" },
{ kind: "Dog", owner: "John", name: "Buddy" },
{ kind: "Dog", owner: "John", name: "Cooper" },
],
Peter: [
{ kind: "Dog", owner: "Peter", name: "Jack" },
]
}
Cat: {
John: [
{ kind: "Cat", owner: "John", name: "Charlie" }
]
}
}
Есть идеи сделать это?Я экспериментировал с некоторыми агрегатами $group
и $push
, но не могу построить этот "вложенный" уровень Animal / Owner / Documents