$geoNear在mongodb中的位置字段在哪里?

xbp102n0  于 2022-11-22  发布在  Go
关注(0)|答案(1)|浏览(125)

我已经在聚合框架的match阶段使用了$near,但是在mongodb的最新版本中它不起作用,所以我读了documentaion,找不到在哪里设置位置字段。
下面是近距离查询:

{
   <location field>: {
     $near: {
       $geometry: {
          type: "Point" ,
          coordinates: [ <longitude> , <latitude> ]
       },
       $maxDistance: <distance in meters>,
       $minDistance: <distance in meters>
     }
   }
}

下面是示例中的$geoNear查询:

{
     $geoNear: {
        near: { type: "Point", coordinates: [ -73.99279 , 40.719296 ] },
        distanceField: "dist.calculated",
        minDistance: 2,
        query: { type: "public" },
        includeLocs: "dist.location",
        num: 5,
        spherical: true
     }
 }

如果我在一个文档中有两个不同的位置字段怎么办?不明白它是如何工作的。

kt06eoxx

kt06eoxx1#

geoNear先决条件:

  • 应为集合提供2dsphere索引
  • 该集合只能有一个2dsphere索引

因此,我们可以得出结论,geoNear将仅挑选唯一的列,该列是2dsphere索引的

相关问题