Aby użyć mongodb $near
zapytania z granicami km, musisz przekonwertować wartość promienia na km. Domyślnie mongodb $near akceptuje $maxDistance
jako radius
.
Konwertuj odległość według 111.12
(jeden stopień to około 111,12 kilometra) przy użyciu km lub pozostaw odległość tak, jak jest przy użyciu stopnia
na twoje pytanie
co ustawić jako maxdistance, jeśli szukam dokumentów w promieniu 1 km?
możesz tego użyć
db.places.find( { loc : { $near : [50,50] , $maxDistance : 1/111.12 } } )
Szczegółowo odpowiedziałem, jak korzystać z funkcji geoprzestrzennych mongo. Możesz sprawdzić