我目前正在使用多个query_string
和fields
的{{1}}查询。我考虑切换到"use_dis_max": false
查询,这也允许多个simple_query_string
。但是,docs并未提及fields
的{{1}}参数,也无法解释如何合并多个字段的查询。多字段use_dis_max
查询是否使用simple_query_string
或simple_query_string
组合了查询?有没有办法指定一个或另一个?
答案 0 :(得分:2)
好问题,文档中没有提及它,但它构造了一个bool查询。 使用Lucene的SimpleQueryParser实现简单查询字符串。 看一下代码,看起来它是一个布尔查询。
您可以通过运行带有explain标志的simple_query_string查询来确认这一点
{
"explain": true,
"_source" :["doc_id"],
"query": {
"simple_query_string": {
"fields" :<field_list>,
"query" : <token>
}
}
}
在响应的解释部分,我们看到sum_of而不是max_of,它将显示在dis_max中,表明它是一个布尔查询。 无法在simple_query_string中设置dis_max标志。