MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

MongoDB - Come eseguire query su più attributi all'interno di un oggetto e raggruppare i risultati

Per la prima parte, dovresti essere in grado di recuperare quel record facendo:

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

Ciò recupererà solo il campo _id da qualsiasi oggetto che ha un elemento dell'array di attributi che ha id =1 e valore =150.

Poiché la seconda parte della tua domanda prevede la restituzione di un conteggio delle corrispondenze, dovresti esplorare le tue opzioni con map -ridurre . Non puoi produrre quel risultato con una semplice query Mongo.