查询Haystack索引

弃用

MongoDB 4.4不支持geoHaystack索引和 geoSearch 命令。使用2d索引 $geoWithin 代替。

Haystack索引是一种特殊的2d地理空间索引,优化后可以在小区域内返回结果。要创建一个haystack索引,请参见创建一个haystack索引

要查询一个haystack索引,使用 geoSearch 命令。您必须为geoSearch指定坐标和附加字段。例如,要返回示例点附近的type字段中值为restaurant的所有文档,命令如下:

db.runCommand( { geoSearch : "places" ,
                 search : { type: "restaurant" } ,
                 near : [-74, 40.74] ,
                 maxDistance : 10 } )

注意

Haystack索引不适合查询最接近特定位置的完整文档列表。与存储桶大小相比,最近的文档可能更远。

请注意

haystack索引目前不支持球形查询操作

find()方法不能访问haystack索引。

最后更新于