Elasticsearch:过滤具有空geo_point值的文档

Posted

技术标签:

【中文标题】Elasticsearch:过滤具有空geo_point值的文档【英文标题】:Elasticsearch: Filter documents with empty geo_point value 【发布时间】:2016-06-08 21:48:52 【问题描述】:

我正在尝试查询具有空 geo_point 字段的文档的弹性搜索索引。该字段存在但它是空白的(下面的示例)。用于过滤string 字段的查询不适用于geo_point 字段。

文档:

"_source": 
"latitudeLongitude": "",
"pickupLocationZipcode": "",

适用于过滤字符串字段但不适用于 geo_point 字段的查询:


  "query": 
    "filtered": 
      "filter": 
        "term": 
          "latitudeLongitude": ""
        
      
    
  

映射:

"latitudeLongitude": 
  "type": "geo_point"

"pickupLocationZipcode": 
  "index": "not_analyzed",
    "type": "string",
    "copy_to": [
      "pickup_location_zipcode"
      ]

【问题讨论】:

【参考方案1】:

您可以为此使用missing query,它会找到您的文档


  "query": 
    "filtered": 
      "filter": 
        "missing": 
          "field": "latitudeLongitude",
          "existence": false,
          "null_value": true
        
      
    
  

【讨论】:

以上是关于Elasticsearch:过滤具有空geo_point值的文档的主要内容,如果未能解决你的问题,请参考以下文章

Pyspark 将 rdd 转换为具有空值的数据帧

ElasticSearch - 过滤类型

弹性搜索:索引具有空值的日期字段

如何在 s-s-rS 的任何列中过滤具有空值的行

elasticsearch中不同字段中的两个过滤器(RANGE)

远程重新索引 API AWS ElasticSearch 空指针异常