MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Mongodb :Prüfen Sie, ob ein Punkt innerhalb eines gespeicherten Polygons liegt

Sie müssen Ihre Standortdaten wie in diesem Schema speichern:

{"loc":
     {"coordinates":[
       [
         [1.0,1.0],
         [1.0,10.0],
         [10.0,10.0],
         [10.0,1.0],
         [1.0,1.0]
       ]
      ],
     "type":"Polygon"
   }
}

und dann $geoIntersects senden Abfragen

db.polygons.find({"loc":{"$geoIntersects":{"$geometry":{"type":"Point", "coordinates":[x, y]}}}}