【问题标题】:How to search multiple string in all attributes using DSL query?如何使用 DSL 查询在所有属性中搜索多个字符串?
【发布时间】:2020-08-07 01:53:02
【问题描述】:

我通过链接How to search in all attributes using DSL query?

我的要求是搜索多个字符串

下面的一个字符串是 DSL 查询

GET /_search
{
  "query": {
    "query_string": {
      "query": "string1"
    }
  }
}

我可以像下面这样传递多个字符串

GET /_search
{
  "query": {
    "query_string": {
      "query": "string1","string2","string2"
    }
  }
}

【问题讨论】:

    标签: elasticsearch dsl elasticsearch-query


    【解决方案1】:

    是的,你可以。

    GET /_search
    {
      "query": {
        "query_string": {
          "query": "(string1 OR string2) AND string2"
        }
      }
    }
    

    您可以有 AND/OR 组合。在这里,我添加了(A OR B) AND C 的示例。指定"A B C"时的默认运算符为OR

    query_string 支持许多选项 - 请参阅documentatian

    【讨论】:

    • 仅供参考,您在查询字符串周围缺少双引号,并且最后一个括号不平衡
    • 我正在纠正它。谢谢您的帮助。好收获@Val
    • 如果 'string1' 匹配并返回,它是否适用于多个字典列表和任何已提交的字典?
    • 是的,这就是您在first link 中提到的内容。除非您更改默认字段值。它将匹配任何字段
    • 它会检查描述
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-28
    • 2018-05-06
    相关资源
    最近更新 更多