在Elasticsearch中查询一个字段不等于另一个字段

23
1个回答

30

是的,您需要使用脚本筛选器来实现此目的。

{
  "bool": {
    "filter": {
      "script": {
        "script": "doc['field1'].value !=  doc['field2'].value"
      }
    }
  }
}

你可以在这里找到更多信息。


不适用于6.3版本: "reason": "在[filtered]中,未知的START_OBJECT关键字。" - stelios
2
@chefarov - 过滤查询在后续版本中已被移除,请使用脚本查询 - https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-script-query.html - Vineeth Mohan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接