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

जावा के माध्यम से $नियर क्वेरी

निकट दस्तावेज़ों की गणना करने के लिए सबसे पहले आपको अधिकतम दूरी और संदर्भ बिंदु की आवश्यकता होगी। नीचे दिए गए कोड से पता चलता है कि दस्तावेज़ों के पास क्वेरी करने के लिए DBObject कैसे बनाया जाता है।

double[] coords = new double[2];
long distance = 100;

DBObject query = BasicDBObjectBuilder.start()
    .push("location")
        .add("$maxDistance", distance)
        .push("$near")
            .push("$geometry")
                .add("type", "Point")
                .add("coordinates", coords)
    .get();

इसका परिणाम उस json में होगा:

{
    "location": {
        "$maxDistance": 100,
        "$near": {
            "$geometry": {
                "type": "Point",
                "coordinates": [
                    0,
                    0
                ]
            }
        }
    }
}

यदि आप मोंगोडब 2.2 का उपयोग कर रहे हैं, तो उपरोक्त कोड काम नहीं करेगा। मुझे निम्नलिखित का उपयोग करना है:

double[] coords = new double[2];
long distance = 100;

DBObject query = BasicDBObjectBuilder.start()
    .push("location")
        .add("$maxDistance", distance)
        .add("$near", coords)
    .get();

जोंस होगा:

{
    "location" : {
        "$maxDistance" : 100,
        "$near" : [
            0,
            0
        ]
    }
}

आप निकट प्रश्नों के बारे में अधिक जानकारी यहाँ प्राप्त कर सकते हैं:

http://docs.mongodb.org/manual/reference/operator/near/




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB में एक सरणी में एक विशिष्ट स्थिति में एक मान डालें

  2. आर:मोंगोलाइट का उपयोग करके मोंगोडब में एक प्रविष्टि को अद्यतन करना

  3. मोंगोडब अपडेट कई

  4. एक्सप्रेस.जेएस के साथ नेवले कनेक्शन को संभालने का सही तरीका क्या है?

  5. उन दस्तावेज़ों का चयन करें जहाँ किसी सरणी फ़ील्ड के सभी मान किसी अन्य सरणी में मौजूद हों