【发布时间】:2020-12-14 10:33:39
【问题描述】:
我有一个 ElasticSearch 查询,其中包含用 Painless 语言编写的自定义脚本分数。现在 ES 请求看起来像这样,自然的 ES _score 完全被我脚本中的自定义评分所取代:
{
"_source": {
"excludes": [
"field_to_exclude",
]
},
"from": 0,
"size": 100,
"query": {
"script_score": {
"query": {
"bool": {
"must": {
"match_all": {}
},
"filter": [
{
"term": {
"field_to_filter": 4
}
}
]
}
},
"script": {
"lang": "painless",
"source": "COMPLEX_PAINLESS_SCRIPT"
}
}
},
"sort": [
{
"price": {
"order": "asc"
}
},
"_score"
]
}
根据前端的某些参数,我希望仍然能够单独计算 ES 自然评分,并将此自定义评分保留在另一个字段中计算,即使可能用作辅助排序标准。
这可能吗?
【问题讨论】:
标签: elasticsearch