ElasticSearch查询与聚合功能详解
1. 地理距离范围过滤器
地理距离范围过滤器(geo_distance_range)允许通过范围进行过滤。它类似于标准的范围过滤器,范围由from和to参数定义。例如,以下代码将前面的代码转换为一个没有from部分的范围查询:
curl -XGET 'http://127.0.0.1:9200/test-mindex/_search?pretty' -d '{ "query": { "filtered": { "filter": { "geo_distance_range": { "pin.location": { "lat": 40, "lon": 70 }, "to": "200km", "optimize_bbox": "memory" } }, "query": { "match_all": {} } } } }'2. 使用查询字符串查询
查询字符串查询(QueryString query)是一种特殊类型的查询,允许通过混合字段规则来定义复杂查询。它使用Lucene查询解析器将文本解析为复杂查询。