elasticsearch elasticsearch 5:使用排除进行搜索,elasticsearch,elasticsearch-5,elasticsearch,elasticsearch 5" /> elasticsearch elasticsearch 5:使用排除进行搜索,elasticsearch,elasticsearch-5,elasticsearch,elasticsearch 5" />

elasticsearch elasticsearch 5:使用排除进行搜索

elasticsearch elasticsearch 5:使用排除进行搜索,elasticsearch,elasticsearch-5,elasticsearch,elasticsearch 5,我尝试在索引中搜索person(按名字和姓氏),这一部分非常简单: GET /my_index/persons/search { "query": { "query_string": { "query" : "john doe" } } } 此外,我想排除具有特定id的人,我尝试了一个过滤器子句,但我无法正确形成查询,你们能帮我吗 编辑 我试过了 { “查询”:{ “多重匹配”:{ “查询”:“安妮·米兰德”, “字段

我尝试在索引中搜索person(按名字和姓氏),这一部分非常简单:

GET /my_index/persons/search
{
    "query": {
        "query_string": {
            "query" : "john doe"
        }
    }
}
此外,我想排除具有特定id的人,我尝试了一个
过滤器
子句,但我无法正确形成查询,你们能帮我吗


编辑

我试过了

{
“查询”:{
“多重匹配”:{
“查询”:“安妮·米兰德”,
“字段”:[
“名字”,
“姓”
],
“类型”:“交叉字段”,
“操作员”:“和”
}
},
“过滤器”:{
“不是”:{
“期限”:{
“id”:1
}
}
}
}

但它可能是这样的:在[filter]中启动对象的未知键。

您可以使用类似的方法

GET /my_index/persons/search
{
  "query": {
    "bool": {
      "must": [
        {"term": {
          "name": {
            "value": "john doe"
          }
        }}
      ],
      "must_not": [
        {"term": {
          "_id": {
            "value": "1"
          }
        }}
      ]
    }
  }
}

filter
应该在
query bool
中。参考这个:完美,这对我来说很有效,我想我有问题,因为我使用的是Elastic5,越新越好!