查询Haystack索引

    弃用

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

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

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

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

    注意

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

    请注意

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

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

    参见

    原文 - Query a Haystack Index