首页 > 解决方案 > Elasticsearch - 如何在所有索引和文档中搜索部分单词

问题描述

我想进行这样的搜索:

我试过这个,但效果不是很好。

GET /_search 
{
  "query": 
      { "query_string": 
          { 
            "query": "Test*" 
          } 
      }
}

标签: elasticsearchkibana

解决方案


尝试使用通配符搜索。确保您要搜索的字段是text字段。

{
    "query": {
        "query_string" : {
            "query" : "*desc*"
        }
    }
}

如果要使用所有索引,可以这样查询

curl -XGET 'http://localhost:9200/index1,index2/_search

PS:在性能方面,这是一个坏主意,因为这会搜索索引中的所有字段。或者,您可以在查询字符串中使用 usedefault_field并指定字段。


推荐阅读