MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

मोंगोडीबी जावा:ऑपरेटर में क्वेरीबिल्डर $ का उपयोग करके मोंगो में ऑब्जेक्ट्स ढूंढना कुछ भी नहीं देता है

अब आप इसके बराबर कर रहे हैं:

db.col.find({$in:[{Id:id1}, {Id:id2}, ..., {Id:idN}]})

जो एक मान्य क्वेरी नहीं है क्योंकि आप यह निर्दिष्ट नहीं कर रहे हैं कि किस फ़ील्ड को $in चालू करना है। मुझे लगता है कि आप चाहते हैं:

db.col.find({Id:{$in:[id1, id2, ..., idN]}})

अपने क्वेरी निर्माण कोड को तदनुसार बदलें और आपको ठीक होना चाहिए।

संपादित करें:सही कोड जोड़ना:

public static void getDocuments(List<Integer> documentIds) {

            BasicDBList docIds = new BasicDBList();
            docIds.addAll(documentIds)
            DBObject inClause = new BasicDBObject("$in", docIds);
            DBObject query = new BasicDBObject("Id", inClause);
            DBCursor dbCursor = mongoRule.getDatabase().getCollection("mycollection").find(query);
            System.out.println(dbCursor == null);
            if (dbCursor != null) {
                while (dbCursor.hasNext()) {
                    System.out.println("object -  " + dbCursor.next());
                }
            }
        } 

कृपया ध्यान दें कि यह मानता है कि "Id" "_id" के अलावा कुछ और है




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. मैं Mongoose में डुप्लीकेट दस्तावेज़ों की जाँच कैसे कर सकता हूँ?

  2. MongoDB $query ऑपरेटर अनुक्रमणिका पर ध्यान नहीं देता है?

  3. जावा वसंत मानचित्रणJacksonJsonView mongodb ObjectId पर स्ट्रिंग नहीं कर रहा है:

  4. नेवला मोंगो माध्यमिक डेटाबेस से नहीं पढ़ रहा है

  5. MongoDB अद्यतन (एक सरणी में आइटम की सूची सम्मिलित करें)