Elasticsearch - 从 6.7 升级到 7.0 后,此搜索不会返回正确的结果

2023-12-06

{  
  "query":{  
    "constant_score":{  
      "filter":{  
        "bool":{  
          "should":{  
            "terms":{  
              "field_a":[  
                "value1", "value2"
              ]
            }
          },
          "must":{  
            "term":{  
              "field_b":"value"
            }
          }
        }
      }
    }
  }
}

此搜索应该返回在 field_a 中包含 value1 或 value2 以及在 field_b 中包含 value 的结果。

与这个 MySQL 查询非常相似:

SELECT * FROM table WHERE field_a IN ('value1', 'value2') AND field_b = value

升级后,它将返回field_b = value的所有结果。查询的第一部分被完全忽略。
有修复建议吗?


你正在遇到这个突破性的改变. minimum_should_match不再被设置为1。要纠正此问题,请显式设置您的minimum_should_match to 1

您的新查询可以这样修复:

{  
  "query":{  
    "constant_score":{  
      "filter":{  
        "bool":{  
          "should":{  
            "terms":{  
              "field_a":[  
                "value1", "value2"
              ]
            }
          },
          "minimum_should_match": 1,
          "must":{  
            "term":{  
              "field_b":"value"
            }
          }
        }
      }
    }
  }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Elasticsearch - 从 6.7 升级到 7.0 后,此搜索不会返回正确的结果 的相关文章

随机推荐

  • codeigniter 在 find_in_set 中添加 IS NULL

    通过生成查询时代码点火器框架 this gt db gt select id memo sent to sent by read by date gt from memos gt where FIND IN SET 1 sent to gt
  • Zxing有时会从条形码中获取错误的数据

    我知道这可能是一个相当简单的问题 我们还可以设置 Zxing 扫描的条形码格式 如下所示 1 intent putExtra SCAN MODE QR CODE MODE or any other format 如果我们这样做 2 inte
  • 什么时候优化为时过早? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 我看到这个词用得很多 但我
  • Xcode 5:代码签名权利错误

    我已经构建了一个支持 IOS 7 的新应用程序 我获得了新的 XCode 5 GM 并尝试使用我的新配置文件和分发证书来签署我的应用程序 但我在分发时遇到了问题 我不断收到以下错误 无效的代码签名权利 您的应用程序中的权利 包签名与包含在包
  • 拆分一列字符向量并返回一个列表

    我有以下内容数据框 df lt data frame Sl No c 1 6 Variable c a a b a b c b c b c Sl No Variable 1 a 2 a b 3 a b c 4 b 5 c 6 b c 我想将
  • os/exec StdoutPipe 带颜色

    我正在制作一个包装纸我的世界使用 Go 的服务器控制台 它使用 os exec 运行服务器和 process StdoutPipe 以获取子进程的实时输出 但是 由于某种原因我无法让它显示颜色 当我直接从终端运行服务器时 颜色可以工作 但当
  • 如何忽略包含在我的yarn.lock 文件中的包?

    因此 在我的 package json 中 我有一堆 npm 库 以及一个从 git ssh url 拉入的私有存储库 该存储库需要始终是最新版本 该yarn lock添加了git sha和yarn升级等不会获取最新的 基本上 鉴于此 de
  • 如何通过 Socket 连接接收大数据流 - 没有 TCPClient

    我有一个问题 我想通过 SocketConnection 发送一个大字符串 但我无法立即接收该字符串 因为网络限制为 1500 字节 那么如何在不使用 TCPClient 的情况下通过 Socket 接收所有字节 或者这是不可能的 publ
  • 如何在类路径中使用嵌入表达式

    我试图将文件的绝对值传递给类路径的读取函数 如果我传递绝对路径和类路径 它就可以正常工作 但是当我传递嵌入表达式时它不起作用 我的代码如下 Scenario create swagger first RAD 给定 url 应用服务器 给定参
  • 在 PrintDialog 中以编程方式选择打印机

    我在 Windows 窗体中有一个 Web 浏览器控件 它加载一个 HTML 文件 我希望能够为用户提供将其另存为 PDF 文件的选项 如果用户安装了 CutePDF Writer 那么我想我可以通过编程方式从打印对话框中选择它并将其另存为
  • jQuery 中的 this 和 $(this) 有什么区别?

    jQuery 中的 this 和 this 有什么区别 我什么时候应该使用哪个 p each function this id this attr id 如果您考虑上面的函数 jQuery 将循环访问页面上的每个段落元素 并通过将 this
  • 如何可靠地猜测 MacRoman、CP1252、Latin1、UTF-8 和 ASCII 之间的编码 [重复]

    这个问题在这里已经有答案了 在工作中 似乎每周都会遇到一些与编码相关的忧虑 灾难或灾难 该问题通常源于程序员认为他们可以在不指定编码的情况下可靠地处理 文本 文件 但你不能 因此决定从今以后禁止文件名以以下结尾 txt or text 人们
  • 错误“‘git’未被识别为内部或外部命令”

    我安装了 Windows 版 Git 但是当我尝试使用git命令提示符中的命令 我收到以下错误 git is not recognized as an internal or external command operable progra
  • 是否可以从列表中的项目获取索引?

    我的意思是 我有一个列表框 我将列表放入 itemsSource 属性中 我还想显示它的绑定中的索引 我不知道这在 WPF 中是否可行 谢谢 有几种方法可以做到这一点 包括使用 AlternationIndex 的一些解决方法 但是 由于我
  • iOS,将文件从收件箱文件夹复制到文档路径

    我启用了文档类型以将文件从其他应用程序导入或复制到我的应用程序 我有一些疑问 1 应该在哪里创建将文件从收件箱移动到文档目录的方法 这是正确的地方吗 func applicationWillEnterForeground applicati
  • 将语音输出解析为 JSON 以调用应用程序 API

    这是一个想法 我们有带有公开的 Restful API 的 Web 应用程序 它接受 json 现在 如何使用 Google 语音 API 获取用户语音输入 将其转换为文本 然后以某种方式将该文本转换为 API 所需的 JSON 然后使用
  • 未找到样式属性 attr/@attr/minTextSize

    我长期以来一直在尝试找出问题所在 但不幸的是无法 If I do android enableAapt2 true 代码工作正常 但是删除相同的代码 应该是强制的 会抛出错误 incremental mergeDevDebugResourc
  • 如何合并两个文件?

    我有两个文件 File 1 7118 7457 7591 7539 8001 File 2 5003 5008 5011 5026 5028 5029 5031 我需要的输出 7118 5003 7457 5003 7591 5003 75
  • Scala 中的右关联方法有什么好处?

    我刚刚开始使用 Scala 并且刚刚了解了如何创建方法右结合 与更传统的左结合性在命令式面向对象语言中很常见 起初 当我看到示例代码时consScala 中的列表 我注意到每个示例总是在右侧有列表 println 1 List 2 3 4
  • Elasticsearch - 从 6.7 升级到 7.0 后,此搜索不会返回正确的结果

    query constant score filter bool should terms field a value1 value2 must term field b value