MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Suche nach verschachtelten MongoDB-Dokumenten

Soweit ich weiß, haben Sie eine Dokumentstruktur wie folgt:

{
   "someProperty" : 1,
   "sendingUser" : {
               userID : 34343,
               name : "Joe Bloggs"
             },
   "recivingUser" : {
               userID : 34345,
               name : "Joe Bloggs"
             }
}

Wenn Sie also den sendenden Benutzer mit der Benutzer-ID =34345 finden müssen, müssen Sie nur Folgendes tun (ich denke nur, dass das so ist, weil ich eigentlich mit dem c#-Treiber für Mongo arbeite):

    DBCollection coll = db.getCollection("privateMessages")

    query = new BasicDBObject();

    query.put("sendingUser.userID", new BasicDBObject("$eq", 34345)); 

    cur = coll.find(query); // all documents with  sendingUser.userID = 34345 will be //returned by cursor

Sehen Sie sich auch das Tutorial für den Java-Treiber an