elasticsearch bool查询中的运算符是什么意思?

jucafojl  于 2023-03-22  发布在  ElasticSearch
关注(0)|答案(2)|浏览(192)

下面是示例查询。matches中的运算符是什么意思?我找不到任何有关此特定场景的文档。

{
  "bool": {
    "should": [
      {
        "match": {
          "lastName": {
            "query": "John",
            "fuzziness": "AUTO",
            "operator": "AND",
            "prefix_length": "1"
          }
        }
      },
      {
        "match": {
          "name": {
            "query": "John Doe",
            "operator": "OR"
          }
        }
      },
      {
        "match": {
          "name.raw": {
            "query": "John Doe",
            "boost": 5.0,
            "operator": "AND"
          }
        }
      },
      {
        "match": {
          "lastName": {
            "query": "Doe",
            "fuzziness": "AUTO",
            "operator": "AND",
            "prefix_length": "1"
          }
        }
      }
    ]
  }
}
rdlzhqv9

rdlzhqv91#

有关于Match Query中运算符的文档。
文件:
operator(可选,字符串)用于解释查询值中的文本的布尔逻辑。有效值为:
OR(默认值)例如,查询值capital of Hungary将被解释为OR匈牙利的大写OR。
例如,查询值capital of Hungary被解释为AND匈牙利的capital AND。

dba5bblo

dba5bblo2#

documentation中所写,operator是一个
用于解释query值中的文本的布尔逻辑。
在您的示例中,您的queryJohn Doe。使用AND运算符,查询将被解释为John AND Doe。而使用OR运算符(默认情况下使用),它将被解释为John OR Doe
operator s在match query中用于表示逻辑条件。请不要将其与boolean query中的 *typed occurences * 混淆,后者有4次出现(“operator”):mustfiltershouldmust_not

相关问题