如何使用query_string查询进行短语前缀搜索

时间:2019-11-21 03:41:34

标签: elasticsearch

我有多个短语前缀,如下所示-

GET test/_search
{
  "query": {
    "bool": {
      "should": [
        {
          "match_phrase_prefix": {
            "test_data": {
              "query": "search of"
            }
          }
        },
        {
          "match_phrase_prefix": {
            "test_data": {
              "query": "world in"
            }
          }
        }
      ]
    }
  }
}

我正在尝试避免bool查询,因为在我的情况下,我可以使用多个短语&   每个词组之间的关系也是动态的(AND / OR)。这类   可以通过 query_string / simple_query_string 轻松处理查询   格式。

我尝试使用 simple_query_string 组合多个匹配前缀

GET test/_search
{
  "query": {
    "simple_query_string": {
      "query": "\"search of*\" \"world in*\"",
        "fields": ["test_data"]
    }
  }
}

但是我想通配符不适用于 simple_query_string 中的词组匹配。有没有一种方法可以使用 query_string / simple_query_string 来实现词组前缀查询。

我正在使用Elasticsearch 6.8。

0 个答案:

没有答案