当前位置: 首页 > 面试题库 >

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

拓拔弘厚
2023-03-14
问题内容

如何查询或过滤一个字段不等于另一个字段?即,其中document1.city1.name不等于document1.city2.name。

这个的一些版本? http://www.elasticsearch.org/guide/zh-
CN/elasticsearch/reference/current/search-request-script-
fields.html


问题答案:

是的,您将需要使用脚本过滤器来实现此目的

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

您可以在这里找到更多信息



 类似资料:
  • 问题: 我已经在lucene索引中索引了NGA Geonames地名录。我需要模糊查询一个字段(地名),但将查询限制为具有特定国家代码的记录。下面是我正在运行的一个示例查询 我没有使用SOLR,我已经做了大量的研究和尝试,但我没有明确的答案,可能是我的速度太慢了。 我想对印度进行模糊搜索,但我只想要与“in”(国家代码)完全匹配的记录

  • 问题内容: 我的愿望是搜索存在field_a而不存在fields_b的文档。有没有一种方法可以使用Kibana中的Lucene查询语法(Kibana的Discover部分中的Search字段)进行此操作。 我尝试使用 __missing_:field_b_ 失败( __exists_可行_ )。 我发现了这一点,但并没有太大帮助: 问题答案: 对于lucene搜索语法: 对于elasticsear

  • 我创建了一个包含标题字段和文本字段的文档弹性搜索索引。给定一个查询,我的搜索的期望行为是首先检查title字段,如果有任何文档的标题与查询“良好”匹配,那么这些文档必须排在前面。只有在良好的标题匹配之后,才应该返回具有良好文本匹配的文档。 通过“良好的标题匹配”,我的意思是类似于“查询接近标题的某个子集,其中接近意味着levinshtein距离小于某个给定数字”。这是一个阈值条件。因此,标题要么是

  • 我在编程一个订单提交页面时遇到了一个相当大的问题,该页面的目的是提交一个订单的争议--提供两个字段被填写,但只有当一个字段少于另一个字段时。 基本上,一个是下拉,另一个是争端框,查询如下: 如果DispotestExtBox=“”而下拉框=“请选择...” 一切正常-提交按钮已启用 如果DisportestExtBox!=“”而下拉框=“请选择...” 错误(反之亦然,因此如果填充了Dispone

  • 我开始使用验证框架用jax-rs验证json请求 是否可以根据另一个字段验证一个字段? 提前致谢

  • 问题内容: 这是基本的内容,但是我对VBA和Word / Access对象模型不熟悉。 我有一个大约117000条记录的两列数据库。列是“姓”和“计数”。我希望用户能够在文本框中键入SMITH并单击“提交”。然后,我想运行类似 并以字符串形式返回table.count的值。 感觉这应该是五到六行代码(我有,但不会发布),但是我显然缺少了一些东西! 干杯 问题答案: 首先,请小心命名“ count”