Jak rozumiem, masz taką strukturę dokumentu:
{
"someProperty" : 1,
"sendingUser" : {
userID : 34343,
name : "Joe Bloggs"
},
"recivingUser" : {
userID : 34345,
name : "Joe Bloggs"
}
}
Więc jeśli potrzebujesz znaleźć wysyłającego użytkownika o identyfikatorze użytkownika =34345, wystarczy wykonać następujące czynności (po prostu tak myślę, ponieważ faktycznie pracuję ze sterownikiem c# dla mongo):
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
Zapoznaj się także z samouczkiem sterownikiem Java