我似乎无法找到这些信息。但是使用地理搜索可以指定$maxDistance
但是对于我的生命,我无法找到它是英里,公里等。
以下是我正在使用的示例查询:
db.hotels.find( { location: { $near : [18.74255, 99.03523], $maxDistance : 0.05 } } ).count()
返回15(来自我的酒店数据库)。
感谢您提供任何信息。
答案 0 :(得分:20)
除非您正在进行球形查询(例如$nearSphere
),否则MongoDB实际上并不关心单位,它只是将您的位置视为笛卡尔坐标。
因此,计算出的距离将与输入单位无关。由于您的$near
点看起来像标准纬度/经度,因此在这种情况下$maxDistance
将以度为单位。
答案 1 :(得分:4)
如果您使用的是$near
,
$maxDistance = your distance in Kms / 111
如果您使用$nearSphere
,
$maxDistance = your distance in kms/ 6378
其中6378
是以千米为单位的地球半径