提问人:Kirill_Cyber 提问时间:11/9/2023 更新时间:11/9/2023 访问量:25
如何修复 ElasticSearch 中的 dsl 查询请求,以便所有文档在function_score中都得到提升?
How can I fix a dsl query request in ElasticSearch so that all documents are boosted in the function_score?
问:
我有带有结构的 dsl 查询
{
"query": {
"function_score": {
"query": {
"bool": {
"must": {
"multi_match": {
"query": "TEST QUERY",
"type": "best_fields",
"fields": [ ....... ],
"operator": "and"
}
}
}
},
"field_value_factor": {
"field": "SearchTuning.FIELD_WHICH_INCREASE_SCORE",
"factor": 100,
"missing": 0
},
"boost_mode": "replace"
}
}
}
我希望索引中的所有文档,而不仅仅是那些与“TEST QUERY”和“query”部分匹配的文档,都将通过“field_value_factor”进行修改,并且字段为“FIELD_WHICH_INCREASE_SCORE”的文档将获得最高分。
但是,实际上,“hits”数组显示仅接收满足查询部分的文档。“hits”中所有生成的文档的 score = 0.0,并且不存在存在字段“SearchTuning.FIELD_WHICH_INCREASE_SCORE”的文档。
如何更正查询以获得所需的结果?
答: 暂无答案
评论