2011-02-15 2 views
3

J'utilise la base de données mongoDB. dans lequel j'ai la collection en format ci-dessous.mongodb ORing et requête AND

{ name : name1 , area: a , country : c} 
{ name : name2 , area: b , country : c} 
{ name : name3 , area: a1 , country : c1} 
{ name : name4 , area: b1 , country : c1} 

je veux interroger comme

select * from coll where (country =c and area =a) or (country = c1 and area = b1) 

dans la requête MongoDB.

J'ai lu beaucoup de document mais je n'ai pas trouvé de réponse appropriée.

Donc si quelqu'un sait s'il vous plaît répondez.

Merci

Répondre

6

Par défaut, tous les éléments d'une requête mongodb utiliser l'opérateur and. Vous pouvez spécifier un opérateur or en utilisant la construction { "$or": [ ... ] }, comme décrit dans le documentation.

Votre requête sera:

{ "$or": [ { "country": "c", "area": "a" }, { "country": "c1", "area": "b1" } ] } 
+0

Merci, il travaille –