MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Tìm kiếm tài liệu lồng nhau trong MongoDB

Theo tôi hiểu, bạn có cấu trúc tài liệu như thế này:

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

Vì vậy, nếu bạn cần tìm người dùng gửi với userID =34345, bạn chỉ cần làm như sau (tôi chỉ nghĩ là như vậy, vì thực sự tôi đang làm việc với trình điều khiển c # cho 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

Ngoài ra, hãy xem hướng dẫn cho trình điều khiển java



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Vị trí $ làm việc trên các phần khác nhau của cùng một tài liệu?

  2. Cách loại trừ một số trường khỏi tài liệu

  3. Làm cách nào để giới hạn kích thước mảng trong MongoDB?

  4. Mongoose SSL, kết nối không được chấp nhận

  5. Hướng dẫn dành cho nhà phát triển về MongoDB Sharding