2012-03-28 4 views
0

La suite de l'exemple de documentation MongoDB semble erronée.

Une suggestion?

a == 1 et a> 5 ne correspondra à aucun document.

Link

db.foo.find({ $and: [ { a: 1 }, { a: { $gt: 5 } } ] }) 

Dans les documents exemple ci-dessus avec un élément d'un ayant une valeur d'un égal à 1 et une valeur de plus de 5 sera retourné

Répondre

2

Il vous manque une importation ligne dans l'exemple:

db.foo.insert({ a: [ 1, 10 ] }) 
db.foo.find({ $and: [ { a: 1 }, { a: { $gt: 5 } } ] }) 

l'insert vous donnera un dossier qui ressemble à ce qui suit:

{"a" : [1, 10] , 
"_id" : "497ce4051ca9ca6d3efca323"} 

Ainsi, la découverte retournera un résultat où == 1 et a aussi une valeur supérieure à 5. Dans ce cas, un peut être deux valeurs: http://www.mongodb.org/display/DOCS/Multikeys

L'un est 1, et à la même temps 10. Voilà pourquoi cette requête retournerait ce résultat.

+0

excellent .. merci –

+0

Yea multi-clés peuvent être source de confusion, je pense qu'ils devraient inclure un exemple simple de $ et avant de sauter dans l'exemple multi-clés (car c'est un autre document que vous devez lire pour bien le comprendre) – jzworkman

Questions connexes