在弹性搜索查询中获取解析异常

时间:2017-06-22 06:07:33

标签: elasticsearch

这个错误只发生在我添加到查询类型但我需要添加类型所以请帮助我。这是我在查询ES时遇到的错误

{
"error": {
    "root_cause": [
        {
            "type": "parse_exception",
            "reason": "failed to parse [multi_match] query type [knowledge]. unknown type."
        }
    ],
    "type": "parse_exception",
    "reason": "failed to parse [multi_match] query type [knowledge]. unknown type."
},
"status": 400}

我的查询(弹性搜索)是:

{
  "query": {
    "multi_match" : {
      "query":   "computer",
      "type": "knowledge",
      "fields": ["topic.name","title" ] 
    }
  }
}`

我在查询中使用了“type”和“_type”两者都不适用于我的情况。

1 个答案:

答案 0 :(得分:1)

此处的类型与您认为不具有相同的含义。类型的可能变体是best_fields,most_fields等。有关详细信息,请参阅this

对于您的具体情况,您应该提出这样的请求:

GET index_name/your_type/_search/
{
  "query": {
    "multi_match" : {
      "query":   "computer",
      "fields": ["topic.name","title" ] 
    }
  }
}