Definición
$minDistanceFiltra los resultados de una búsqueda geoespacial.
$nearConsulta o a aquellos$nearSpheredocumentos que se encuentren al menos a la distancia especificada del punto central.Si la
$nearconsulta o especifica el$nearSpherepunto central como un punto GeoJSON, especifique la distancia como un número no negativo en metros.Si la consulta
$nearSphereespecifica el punto central como un par de coordenadas heredadas, establecer la distancia como un número no negativo en radianes.$nearsolo puede utilizar el índice 2dsphere si la query especifica el punto central como punto GeoJSON.
Ejemplos
Usar con $near
Importante
Si especifica coordenadas de longitud y latitud, enumera primero la longitud y luego la latitud.
Los valores de longitud válidos están entre
-180y180, ambos inclusive.Los valores de latitud válidos están entre
-90y90, ambos inclusive.
Considere una colección places que tiene un índice 2dsphere.
El siguiente ejemplo devuelve documentos que están al menos a 1000 metros y como máximo a 5000 metros del punto GeoJSON especificado, ordenados del más cercano al más lejano:
db.places.find( { location: { $near : { $geometry: { type: "Point", coordinates: [ -73.9667, 40.78 ] }, $minDistance: 1000, $maxDistance: 5000 } } } )
Usar con $nearSphere
Considere una colección places que contiene documentos con un location campo y tiene un índice 2 dsphere.
Luego, el siguiente ejemplo devuelve cuyo location está al menos a 1000 metros y como máximo a 5000 metros del punto especificado, ordenado del más cercano al más lejano:
db.places.find( { location: { $nearSphere: { $geometry: { type : "Point", coordinates : [ -73.9667, 40.78 ] }, $minDistance: 1000, $maxDistance: 5000 } } } )
Para ver un ejemplo que especifica el punto central como un par de coordenadas heredado, consulte $nearSphere