MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Mongodb:Verifique se um ponto está dentro de um polígono armazenado


Você deve armazenar seus dados de localização como este esquema:
{"loc":
     {"coordinates":[
       [
         [1.0,1.0],
         [1.0,10.0],
         [10.0,10.0],
         [10.0,1.0],
         [1.0,1.0]
       ]
      ],
     "type":"Polygon"
   }
}

e então envie $geoIntersects consultas
db.polygons.find({"loc":{"$geoIntersects":{"$geometry":{"type":"Point", "coordinates":[x, y]}}}}