Pour utiliser mongodb $near
requêtes avec des limites en km, vous devez convertir la valeur du rayon en km. Par défaut mongodb $near accepte $maxDistance
comme radius
.
Convertir la distance par 111.12
(un degré équivaut à environ 111,12 kilomètres) lors de l'utilisation de km, ou laissez la distance telle qu'elle est lors de l'utilisation de degrés
à votre question
que dois-je définir comme maxdistance si je recherche des documents dans un rayon de 1 km ?
vous pouvez l'utiliser
db.places.find( { loc : { $near : [50,50] , $maxDistance : 1/111.12 } } )
J'ai répondu comment utiliser les fonctionnalités géospatiales mongo ici en détail. Vous pouvez consulter