自定义分数和所有文档中的最大价值



嗨,现在我有custom_score "_score + ((parseInt(doc.ad_when.value) - oldestAd) / doc.ad_since.value) * 2".可以在自定义分数中使用所有文档中的最大值。我希望最旧的广告来自所有搜索的数据。MySql 具有函数 MAX。在MySql中,这将很容易。

例: 在所有文档中,我都有受欢迎程度字段,我想将所有文档中的最大值用于自定义分数。可能吗?

不幸的是,它只能分两步完成。首先,您需要从按ad_when.value排序的列表中检索第一条记录,或使用分面查找oldestAd值。然后,您可以在自定义分数中使用此值。我建议oldestAd脚本参数,以防止 elasticsearch 在每个请求上解析脚本。

最新更新