当前位置: 首页 > 知识库问答 >
问题:

Elasticsearch:带有内部“查询”的“query_string”准确吗?

刘海
2023-03-14

考虑以下问题:

"query": {
  "query_string": {
    "query: "WORD_A WORD_B",
    "default_operator": "AND"
  }
}

我在我们的一个系统中有这个查询,我想知道这个查询是否准确。确切地说,我的意思是,只有带有WORD_AWORD_B的文档才应该返回,但决不能只返回一个单词、类似单词或根本没有匹配单词的文档。

RTFM。也许我读错了,但我没有找到这个问题的参考。

弹性5.6.3。

上述模拟的查询是否准确,这意味着它将仅使用与查询严格匹配的文档?

共有1个答案

松嘉运
2023-03-14

是和否。这取决于现场使用的ES分析仪。如果您使用的是默认值,那么-是的,除了您的查询还将匹配小写术语“word_a word_b”。如果您使用的是custom one,它基于“-no”进行标记化/过滤/拆分。

有关如何在ElasticSearch中使query\u字符串搜索精确短语的详细信息,请参阅

 类似资料:
  • 问题内容: 我正在尝试使用query_string编写查询以检索嵌套对象的数据查询。 我想做的查询的一个例子是: 其中“ a”是嵌套对象,“ id”是“ a”的字段。 我知道我可以使用嵌套查询成功地执行此任务,编写如下查询: 但是,我想避免这种情况。我不想自己弄清楚用户正在搜索嵌套字段并修改查询。我尝试使用“ fields”参数,但它似乎不适用于嵌套对象。 是否可以使用“ query_string

  • 问题内容: 为什么此查询给我一个解析异常?如果我把它移开,它似乎确实起作用。但是我需要在其中带有query_string的布尔值。我该如何工作? 问题答案: 您应该使用查询过滤器,它将所有查询包装到过滤器中。否则,您将得到解析错误。 您需要将零件更改为: @Edit:由于我看到人们可能会注意到,我只粘贴了整个查询的更改部分,包括部分(而不是整个),所以这里是修改后的全部:

  • 我有一个带有嵌套映射的索引。我想预先形成一个查询,该查询将返回以下内容:给我搜索词中每个单词出现在一个或多个嵌套文档中的所有文档。 以下是索引: 以下是我尝试的最新查询: 例如,如果我搜索单词“食物和水”,我希望每个单词至少出现在嵌套文档中。即使只有一个单词存在,当前搜索也会返回文档 谢谢你的帮助! 更新:正如克里斯托所建议的,解决方案有效。现在我有以下问题。 这是我的索引: 我要执行的查询是,如

  • 我正在努力编写一个具有多个和/或条件的弹性搜索查询。 它的基本逻辑如下: 正如docs中提到的,如果一个文档只满足must子句,那么它就被认为是匹配的。在这种情况下,should子句起到增强作用,即如果文档除了mouth子句之外还匹配一个或多个should子句,那么它将具有更高的相关性得分,假设cond2、cond3和cond4是计算相关性得分的查询。 问题是我只想要至少匹配OR条件之一的文档。

  • 在第二个选择,它说“'select'意外”

  • 问题内容: 我绝对是SQL的新手,我一直在努力用Postgresql中的以下表结构编写一个复杂的查询: 查询的目的是获取每个用户的报告类型数量,并将其显示在一列中。有三种不同类型的报告。 使用group-by的简单查询将解决问题,但将其显示在不同的行中: 问题答案: