我有要搜索的字段“ xyz ”。该字段的类型是关键字。字段“xyz”的不同值是 -
- A B C D
- a/b/c/e
- a/b/f/g
- a/b/f/h
现在进行以下查询 -
{
"query": {
"query_string" : {
"query" : "(xyz:(\"a/b/c\"*))"
}
}
}
我应该只得到这两个结果 -
- A B C D
- a/b/c/e
但我得到了所有四个结果 -
- A B C D
- a/b/c/e
- a/b/f/g
- a/b/f/h
编辑 - 实际上我不是直接在 ElasticSearch 上查询,我正在使用这个 API https://atlas.apache.org/api/v2/resource_DiscoveryREST.html#resource_DiscoveryREST_searchWithParameters_POST它为弹性搜索创建上述查询,所以我没有太多控制权在弹性搜索查询字符串上。我可以更改的是该字段的弹性搜索分析器或其类型。