Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
<img src="//i.stack.imgur.com/RUiNP.png" height="16" width="18" alt="" class="sponsor tag img">elasticsearch 格式错误的查询,应为“0”;结束“对象”;但是找到了;字段“U名称”;_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch_Exception_Kibana - Fatal编程技术网 elasticsearch 格式错误的查询,应为“0”;结束“对象”;但是找到了;字段“U名称”;,elasticsearch,exception,kibana,elasticsearch,Exception,Kibana" /> elasticsearch 格式错误的查询,应为“0”;结束“对象”;但是找到了;字段“U名称”;,elasticsearch,exception,kibana,elasticsearch,Exception,Kibana" />

elasticsearch 格式错误的查询,应为“0”;结束“对象”;但是找到了;字段“U名称”;

elasticsearch 格式错误的查询,应为“0”;结束“对象”;但是找到了;字段“U名称”;,elasticsearch,exception,kibana,elasticsearch,Exception,Kibana,您好,在Kibana控制台中运行术语查询时,我遇到了一个语法分析异常 查询 GET /products/_search { "query": { "terms": { "tags.keyword": [ "Soup", "Cake" ] }, "range": { "in_stock": {

您好,在Kibana控制台中运行术语查询时,我遇到了一个语法分析异常

查询

GET /products/_search
{
  "query": {
    "terms": {
      "tags.keyword": [ "Soup", "Cake" ]
    },
    "range": {
      "in_stock": {
        "gte": 10,
        "lte": 20
      }
    }
  }
}
回应/例外

{
  "error" : {
    "root_cause" : [
      {
        "type" : "parsing_exception",
        "reason" : "[terms] malformed query, expected [END_OBJECT] but found [FIELD_NAME]",
        "line" : 6,
        "col" : 5
      }
    ],
    "type" : "parsing_exception",
    "reason" : "[terms] malformed query, expected [END_OBJECT] but found [FIELD_NAME]",
    "line" : 6,
    "col" : 5
  },
  "status" : 400
}
有谁能告诉我为什么会出现此异常以及如何解决它吗?

您需要使用来组合术语和范围查询。修改搜索查询,如下所示-

{
  "query": {
    "bool": {
      "must": [
        {
          "terms": {
            "tags.keyword": [
              "Soup",
              "Cake"
            ]
          }
        },
        {
          "range": {
            "in_stock": {
              "gte": 10,
              "lte": 20
            }
          }
        }
      ]
    }
  }
}

这很有效,谢谢。但是我还是想知道为什么我提到的查询不起作用。@Udhav Mohata如果你想组合多个查询,你必须使用一个类似bool查询的复合查询。您不能在一个查询子句中使用多个查询。此外,请使用
filter
而不是
must
,因为这不涉及评分。@Udhav Mohata您能不能请您投票并接受答案,因为这有助于您解决问题:)