我使用的是ES 2.3版。我索引了一些具有如下结构的文档:
{
"BUSINESSLINE" :"ABC CORP",
"NAME" : "John"
....
...
}
字段BUSINESSLINE未分析字符串。
问题是此查询返回结果:
{
"query": {
"multi_match" : {
"query": "ABC",
"fields": [ "_all" ]
}
}
}
但是这个没有(它没有显示命中!):
{
"query": {
"multi_match" : {
"query": "ABC",
"fields": [ "BUSINESSLINE " ]
}
}
}
任何帮助表示赞赏,我试图谷歌和研究,但我无法找到任何理由。 谢谢!
答案 0 :(得分:0)
是的,你是对的。由于_all
字段,查询与文档匹配,这是一个通过空格分隔符连接所有字段构造的大字符串。它也是analysed
,这就是您的查询匹配的原因。
您可以详细了解here。