该 $center
运算符使用要用于查询的 $geoWithin
旧坐标对指定圆圈。 它为平面、欧克里丹平面上的地理空间查询定义圆圈。
语法
{
$geoWithin: {
$center: [ [ <x>, <y> ], <radius> ]
}
}
参数
参数 | DESCRIPTION |
---|---|
<x> |
圆中心点的 x 坐标 |
<y> |
圆中心点的 y 坐标 |
<radius> |
圆的半径与坐标的单位相同 |
示例:
让我们使用数据集 stores
在“第一次向上顾问麦克风集市”的 50 度半径内查找所有商店。
db.stores.find(
{
location: {
$geoWithin: {
$center: [[-112.7858, -29.1866], 50]
}
}
},
{
name: 1,
city: 1,
location: 1,
_id: 0
}
).limit(2)
该查询返回第一个 Up 顾问麦克风集市位置的 50 度半径内的存储,这对于分析市场覆盖范围或规划交付路线很有用。
{
"name": "Contoso, Ltd. | Baby Products Corner - Port Jerrold",
"location": { "lat": -72.7709, "lon": -24.3031 },
"city": "Port Jerrold"
},
{
"name": "VanArsdel, Ltd. | Smart Home Closet - Trystanport",
"location": { "lat": -64.5509, "lon": -28.7144 },
"city": "Trystanport"
}
重要
作员 $center
在一架平整的欧克里丹飞机上工作。
对于更准确的地球样球面计算,请改用 $centerSphere
。
半径以与所使用的坐标系相同的单位指定。
相关内容
- 查看有关 从 MongoDB 迁移到适用于 MongoDB 的 Azure Cosmos DB (vCore) 的选项。
- 详细了解 与 MongoDB 的功能兼容性。