Definição
$minDistanceFiltra os resultados de uma query geoespacial
$nearou$nearSpherepara os documentos que estão pelo menos à distância especificada do ponto central.Se a query
$nearou$nearSphereespecificar o ponto central como um ponto GeoJSON , especifique a distância como um número não negativo em metros .Se a query
$nearSphereespecificar o ponto central como um par de coordenadas legado, especifique a distância como um número não negativo em radianos.$nearsó pode usar o índice 2dsphere se a query especificar o ponto central como um ponto GeoJSON.
Exemplos
Usar com $near
Importante
Se especificar coordenadas de latitude e longitude, liste a longitude primeiro e então a latitude.
Os valores de longitude válidos estão entre
-180e180, ambos inclusos.Os valores de latitude válidos estão entre
-90e90, ambos inclusos.
Considere uma collection places que tenha um índice 2dsphere.
O exemplo a seguir retorna documentos que estão a pelo menos 1000 metros e no máximo a 5000 metros do ponto GeoJSON especificado, classificados do mais próximo para o mais distante:
db.places.find( { location: { $near : { $geometry: { type: "Point", coordinates: [ -73.9667, 40.78 ] }, $minDistance: 1000, $maxDistance: 5000 } } } )
Usar com $nearSphere
Considere uma collection places que contém documentos com um campo location e tem um índice 2dsphere.
Em seguida, o exemplo a seguir retorna location que esteja a pelo menos 1000 metros e no máximo 5000 metros do ponto especificado, ordenado do mais próximo para o mais distante:
db.places.find( { location: { $nearSphere: { $geometry: { type : "Point", coordinates : [ -73.9667, 40.78 ] }, $minDistance: 1000, $maxDistance: 5000 } } } )
Para ver um exemplo que especifica o ponto central como um par de coordenadas legado, consulte $nearSphere