Můžete použít $geoNear
agregační fáze potrubí k vytvoření vzdálenosti od dotazovaného bodu:
db.new_stores.aggregate([
{ "$geoNear": {
"near": {
"type": "Point",
"coordinates": [ -81.093699, 32.074673 ]
},
"maxDistance": 500 * 1609,
"spherical": true,
"distanceField": "distance",
"distanceMultiplier": 0.000621371
}}
]).pretty()
To vám umožní zadat "distanceField"
což ve výstupních dokumentech vytvoří další pole obsahující vzdálenost od dotazovaného bodu. Můžete také použít "distanceMultiplier"
použít jakýkoli převod na výstupní vzdálenost podle potřeby (tj. metry na míle a poznamenat, že všechny vzdálenosti GeoJSON jsou vráceny v metrech)
K dispozici je také geoNear
příkaz s podobnými možnostmi, ale samozřejmě nevrací jako výstup kurzor.