2010-10-29 67 views

回答

1

使用「geoNear」命令將返回一個「dis」值作爲結果的一部分。將該值乘以地球半徑以您選擇的單位爲單位,可以得出該結果與原始位置之間的距離。

例如,在「地方」是收集併爲您的原點的緯度/經度的名字是50,50

db.command({ geoNear : "places" , near : [50,50] }); 

將在格式返回結果:

[ 
    { 
     "dis" : 0.3886630122897946, 
     "obj" : { 
      "_id" : ObjectId("4d9123026ccc7e2cf22925c4"), 
      "pos" : { 
       "lon" : -10, 
       "lat" : -20 
      } 
     } 
    } 
] 

將每個結果的「dis」值乘以6371會給出以km爲單位的距離,而3959給出里程。

Mongo docs有更多的細節和例子。

相關問題