निकट दस्तावेज़ों की गणना करने के लिए सबसे पहले आपको अधिकतम दूरी और संदर्भ बिंदु की आवश्यकता होगी। नीचे दिए गए कोड से पता चलता है कि दस्तावेज़ों के पास क्वेरी करने के लिए 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/