MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

MongoDB – So führen Sie Abfragen für mehrere Attribute innerhalb eines Objekts durch und gruppieren die Ergebnisse

Für den ersten Teil sollten Sie in der Lage sein, diesen Datensatz wie folgt abzurufen:

db.collectionName.find({"attributes.id": 1, "attributes.value": 150});

Dadurch wird nur das _id-Feld von jedem Objekt abgerufen, das ein Element des Attribute-Arrays mit id =1 und value =150 hat.

Da der zweite Teil Ihrer Frage die Rückgabe einer Anzahl von Übereinstimmungen beinhaltet, sollten Sie Ihre Optionen mit map erkunden -reduzieren . Sie können dieses Ergebnis nicht mit einer einfachen Mongo-Abfrage erzielen.