$box ऑपरेटर $geoWithin के लिए केवल ग्रिड निर्देशांक और GeoJSON का समर्थन नहीं करता आकार प्रारूप।
आपके दस्तावेज़ों की संरचना के आधार पर, और आप उनसे कैसे पूछताछ कर रहे हैं, इसे संभवतः ग्रिड निर्देशांक के रूप में माना जाता है, अर्थात {geometry: [<long>, <lat>]}
हो सकता है कि इसने आपके पॉलीगॉन दस्तावेज़ के लिए काम न किया हो क्योंकि जियोसन बहुभुज
एक अतिरिक्त सरणी आवरण की आवश्यकता है। यानी [[ [<long>, <lat>] ]]
ग्रिड निर्देशांक प्रारूप को अमान्य करना।
यदि आपके दस्तावेज़ जियोसन प्रारूप में हैं, और आप एक क्षेत्र का चयन करना चाहते हैं, तो आप $geometry बजाय।
db.places.find(
{
'geometry': {
$geoWithin: {
$geometry: {
type : "Polygon" ,
coordinates: [ [ [ 0, 0 ], [ 3, 6 ], [ 6, 1 ], [ 0, 0 ] ] ]
}
}
}
}
)
ध्यान देने योग्य बात यह है कि MongoDB Compass वर्तमान में भू-स्थानिक दृश्यावलोकन (v1.6) अभी तक GeoJSON का समर्थन नहीं करता है।