Geo Bounding Box Query(地理边框查询)
允许使用边框对基于点位置的点击进行过滤的查询。 假设以下索引文档:
然后可以使用geo_bounding_box过滤器执行以下简单查询:
Query Options(查询选项)
Option(选项) | Description(描述) |
| 可选名称字段来标识过滤器。 |
| [5.0.0] 设置为true以接受无效纬度或经度的地理点(默认值为假)。 |
| 设置为IGNORE_MALFORMED以接受无效纬度或经度的地理点,设置为COERCE也尝试推断正确的纬度或经度。 (默认为STRICT)。 |
| 设置为索引或内存之一,以定义此过滤器是否将在内存或索引中执行。 有关详细信息,请参阅下面的Type默认值是 Memory。 |
Accepted Formats(接受格式)
以同样的方式,geo_point类型可以接受地理点的不同表示,过滤器也可以接受它:
Lat Lon As Properties(Lat Lon 作为属性)
Lat Lon As Array (Lat Lon 作为排列)
格式在[lon,lat]中,注意,这里的lon / lat的顺序是为了符合GeoJSON。
Lat Lon As String(Lat Lon 作为字符串)
格式在lat,lon。
Geohash(地理散列)
Vertices(顶点)
边框的顶点可以由top_left 和bottom_right或top_rightand bottom_left参数设置。 更多的名称topLeft,bottomRight,topRight和bottomLeft是支持的。 而不是成对设置值,可以使用简单的名称顶部,左侧,底部和右侧单独设置值。
geo_point Type(geo_point类型)
过滤器需要在相关字段上设置geo_point类型。
Multi Location Per Document(每个文档的多个位置)
过滤器可以与每个文档的多个位置/点配合使用。 一旦单个位置/点与过滤器匹配,文档将被包含在过滤器中。
Type(类型)
默认情况下,边框执行的类型设置为内存,这意味着在内存中检查文档是否在边框范围内。 在某些情况下,索引选项的执行速度会更快(但是请注意,在这种情况下,geo_point类型必须具有lat和lon索引)。 请注意,使用索引选项时,不支持每个文档字段的多个位置。 这是一个例子:
Ignore Unmapped(忽略未映射)
当设置为true时,ignore_unmapped选项将忽略未映射字段,并且将不匹配此查询的任何文档。 当查询可能具有不同映射的多个索引时,这可能很有用。 当设置为false(默认值)时,如果字段未映射,则查询将抛出异常。
Last updated