Chcete-li použít mongodb $near
dotazy s hranicí km, musíte hodnotu poloměru převést na km. Ve výchozím nastavení mongodb $near přijímá $maxDistance
jako radius
.
Převést vzdálenost podle 111.12
(jeden stupeň je přibližně 111,12 kilometrů) při použití km, nebo ponechte vzdálenost tak, jak je při použití stupně
na vaši otázku
co nastavím jako maximální vzdálenost, když hledám dokumenty v okruhu 1 km?
můžete použít toto
db.places.find( { loc : { $near : [50,50] , $maxDistance : 1/111.12 } } )
Podrobně jsem zde odpověděl, jak používat geoprostorové funkce mongo. Můžete se podívat