【问题标题】:ElasticSearch Malform QqueryElasticSearch 畸形查询
【发布时间】:2018-01-06 02:02:52
【问题描述】:

当我在 ElasticSearch 5.5 中执行以下聚合查询时,“[必须] 查询格式错误,查询名称后没有 start_object”。任何想法?

curl -XGET 'localhost:9200/car/car/_search?pretty' -H 'Content-Type: application/json' -d'
{
  "query": {
    "bool": {
      "must": { "match": { "car_color": "Yellow" }  }
    }
  },
  "aggregations": {
      "all_cars": {
         "global": {},
         "aggregations": {
            "car_makes": {
               "filter": {
                  "must": [
                     {
                        "terms": {"car_color": ["Yellow"]}
                     }
                  ]
               },
               "aggregations": {
                  "filtered_car_make": {
                     "terms": {"field": "car_make"}
                  }
               }
            }
         }
      }
   }
}
'

【问题讨论】:

    标签: elasticsearch


    【解决方案1】:

    您是否尝试过不在布尔查询中的匹配查询?

    {
      "query": {
        "match": { "car_color": "Yellow" }
       },
       "aggregations": {
         ....
    }
    

    【讨论】:

      【解决方案2】:

      问题出在您的聚合过滤器中

                 "filter": {
                    "must": [
                       {
                          "terms": {"car_color": ["Yellow"]}
                       }
                    ]
                 },
      

      需要这样修复:

                 "filter": {
                     "terms": {"car_color": ["Yellow"]}
                 },
      

      【讨论】:

      • 这个运气好吗?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多