【问题标题】:Elastic Search aggregation starting withElastic Search 聚合以
【发布时间】:2018-01-14 23:08:00
【问题描述】:

有没有办法将过滤器添加到 terms 聚合中,以便我只得到以特定字符串开头的过滤器?

我从这里开始:

{
  "query": {
    "match_all": {}
  },
  "aggs": {
    "address": {
      "terms": {
        "field": "address"
      }
    }
  }
}

【问题讨论】:

    标签: elasticsearch filter aggregation


    【解决方案1】:

    使用include or exclude parameters

    {
      "query": {
        "match_all": {}
      },
      "aggs": {
        "address": {
          "terms": {
            "field": "address",
            "include": "Main.*"     <-- add this
          }
        }
      }
    }
    

    【讨论】:

    • 我对这个解决方案有疑问。如果有一个地址“Even green Terrace”,它会返回“even”、“green”和“terrace”,而不是完整的值。如何确保它只返回值的全文?
    • 尝试使用address.rawaddress.keyword字段,如果有的话。否则,您将不得不更改映射并重新索引数据。
    • 太棒了,很高兴它有帮助!
    猜你喜欢
    • 1970-01-01
    • 2014-06-29
    • 1970-01-01
    • 2021-02-04
    • 2015-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多