Domanda

Come posso interrogare i frullati che hanno mele in loro?(Di seguito è riportata una collezione con 3 documenti)

_id => 1
name => 'best smoothie' 
ingredients => Array
    (
        [0] => apple
        [1] => raspberry
        [2] => orange
        [3] => banana
    )
_id => 2
name => 'summer smoothie' 
ingredients => Array
    (
        [0] => lemon
        [1] => mint

    )
_id => 3
name => 'yogurt smoothie' 
ingredients => Array
    (
        [0] => apple
        [1] => blueberry

    )
.

È stato utile?

Soluzione

Se è sufficiente eseguire la query al di sotto di MongoDB è abbastanza intelligente da capire cosa stai cercando di fare.

{ ingredients: "apple" }
.

Mongo vedrà che gli ingredienti sono un elenco e solo i documenti di ritorno contengono "Apple" alcuni dove in quella lista.

Altri suggerimenti

Dal Documentazione :

.

Nota: campi contenenti array corrispondono agli operatori condizionati, se solo uno Corrispondenze dell'articolo .

Pertanto, la seguente query:

db.collection.find( { field: { $gt:0, $lt:2 } } );

corrisponderanno a un documento che contiene il Campo seguente:

{ field: [-1,3] }

Perché le persone scrivono applicazioni scalabili per i frullati?

db.find ({"ingredienti": {$ in: "Apple"}});

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top