簡體   English   中英

Elasticsearch-在過濾器中組合query_string和bool查詢

[英]Elasticsearch - combining query_string and bool query in filter

是否可以在filter query組合使用query_stringbool query filter query

例如 -

{
  "filter": {
    "query_string": {
      "query": "field:text"
    }
  },
  "bool": {
    "should": {
      "match": {
        "field": "text"
      }
    }
  }
}

bool用於將各種查詢組合到一個bool查詢中。 您可以使用bool以這種方式組合多個查詢-

{
  "query": {
    "bool": {
      "must": [
        {
          "query_string": {
            "query": "field:text"
          }
        },
        {
          "match": {
            "field": "text"
          }
        }
      ]
    }
  }
}

must子句將確保所有條件都匹配。 您還可以使用should,以確保在僅應使用的情況下,查詢之一與之匹配。

由於布爾是另一種查詢類型,因此您還可以將布爾查詢合並到布爾查詢中,如下所示:

{
  "query": {
    "bool": {
      "must": [
        {
          "bool": {
            "must": [
              {
                "query_string": {
                  "query": "field:text"
                }
              },
              {
                "match": {
                  "field": "value"
                }
              }
            ]
          }
        },
        {
          "match": {
            "field": "text"
          }
        }
      ]
    }
  }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM