我正在使用elasticsearch及其查询字符串功能创建高级搜索。
所以我对高级查询有一些疑问。.我读了query string document,但找不到任何答案,
当我在一个查询字符串中搜索普通查询和精确查询时。sales AND "industrial machinery"
的结果与将两个查询字符串放入must数组的另一个查询不同...
让我展示一个例子:
"query": {
"bool":{
"must":[
{
"query_string":{
"query": "sales* AND \"industrial machinery\"",
"type": "best_fields",
"fields":["title", "description"]
}
}
]
}
}
结果计数:56
"query":{
"bool":{
"must":[
{
"query_string":{
"query": "sales*",
"type": "best_fields",
"fields":["title", "description"]
},
{
"query_string":{
"query": "\"industrial machinery\"",
"type": "best_fields",
"fields":["title", "description"]
}
]
}
}
结果数:113
我知道第二个查询的结果是正确的,但是我不知道为什么弹性在这两个查询之间产生了差异。
如何在第一次查询中得到相同的结果?使用第一个查询进行搜索时,我希望获得113个文档。
感谢您的帮助