$center(地理空间)

适用对象: MongoDB vCore

$center 运算符使用要用于查询的 $geoWithin 旧坐标对指定圆圈。 它为平面、欧克里丹平面上的地理空间查询定义圆圈。

语法

$center 运算符的语法如下:

{
  $geoWithin: {
    $center: [ [ <x>, <y> ], <radius> ]
  }
}

参数

参数 类型 DESCRIPTION
<x> 数字 圆中心点的 x 坐标
<y> 数字 圆中心点的 y 坐标
<radius> 数字 圆的半径与坐标的单位相同

示例:

让我们使用存储数据集在中心点的 50 度半径内查找所有存储。 此查询可帮助识别特定位置的特定距离内的存储。

db.stores.find({
  "location": {
    $geoWithin: {
      $center: [[-112.7858, -29.1866], 50]
    }
  }
})

此查询将返回如下存储:

{
  "_id": "f2a8c190-28e4-4e14-9d8b-0256e53dca66",
  "name": "Fabrikam, Inc. | Car Accessory Outlet - West Adele",
  "location": {
    "lat": -47.2548,
    "lon": -38.4071
  },
  // ... other fields
}

该查询搜索第一个 Up 顾问麦克风集市位置的 50 度半径内的商店,这对于分析市场覆盖范围或规划交付路线很有用。

重要

作员 $center 在一架平整的欧克里丹飞机上工作。

对于更准确的地球样球面计算,请改用 $centerSphere

半径以与所使用的坐标系相同的单位指定。