ich eine Produktsammlung wie diese haben, vereinfacht:Mongo DB Aggregat mit eingebetteten Dokumente
[
{
"_id": 1,
"ref": "product 1",
"variants": [
{
"ref": "variant 1.1",
"categories": ["category a"]
},
{
"ref": "variant 1.1",
"categories": ["category a","category b"]
}
]
},
{
"_id": 2,
"ref": "product 2",
"variants": [
{
"ref": "variant 2.1",
"categories": ["category c"]
},
{
"ref": "variant 2.1",
"categories": ["category a","category c"]
}
]
}
]
Ich möchte für die Kategorien (distinct), mit deren Anzahl haltigen Produkten (nicht Varianten) abzufragen.
Zum Beispiel einige Ergebnis wie folgt aus:
[
"category a": 2,
"category b": 1,
"category c": 1
]
Ich habe versucht, einige Abfragen mit Aggregat und entspannen, aber ich kann es nicht herausgefunden. Alle Hilfe geschätzt! Diese
ist das, was ich bisher:
[
{$match: ... }, // optional filtering
{$unwind: '$variants'},
{$unwind: '$variants.categories'},
]
Aber kann jetzt nicht herausfinden, Howto Gruppe nach Kategorie, mit einer Gesamtzahl aller Produkte (nicht Varianten) innerhalb dieser Kategorie.
Danke! Ausgezeichnet :) Ich muss darauf studieren ... – peterkin