2011-07-20 10 views
13

W MongoDB, można znaleźć wszystkie te rekordy w kolekcji w dB bazy danych, które zawierają szczególne pole stosując następujące zapytanieZnalezienie wszystkie rekordy zawierające daną podpole w MongoDB

var doc = db.collection_name.find({field_name:{$exists:true}}) 

Teraz rozważmy następujący dokument:

{ 
    "somefield":"someval", 
    "metadata": {"id":"someval", 
       "client_url":"http://www.something.com" 

       } 
} 

Jakie byłoby zapytanie dotyczące uzyskania wszystkich rekordów mających pole id w metadanych?

Proszę o pomoc. Dziękuję

Odpowiedz

25

Można używać notacji dot odwołać pola sub-dokumentów

var doc = db.collection_name.find({"metadata.id":{$exists:true}}) 
+0

Można również zapisać go jako: 'db.collection_name.find ({metadanych: {id: {$ istnieje: true} }}) '. –

Powiązane problemy