问题是由于您正在使用该
text字段和
match查询。
对匹配查询进行分析,并使用与索引时使用的搜索词相同的分析器,对于字段,这是标准分析器
text。在您的情况下,如果在空白处打断文本,
LandkreisCloppenburg将创建两个标记
landkreis,
cloppenburg同时创建索引和搜索时间,甚至
cloppenburg匹配文档。
解决方案:使用
keyword field。
索引定义
{ "mappings": { "properties": { "location": { "type": "keyword" } } }}
为两个文档建立索引,然后使用相同的搜索查询
{ "query": { "bool": { "must": [ { "match": { "location": { "query": "Cloppenburg" } } } ] } }
}
结果
"hits": [ { "_index": "location", "_type": "_doc", "_id": "2", "_score": 0.6931471, "_source": { "location": "Cloppenburg" } } ]
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)