elasticsearch FunctionScore java API
1、使用script
FunctionScoreQueryBuilder query =
QueryBuilders.functionScoreQuery(queryBuilder
).add(ScoreFunctionBuilders.scriptFunction(
new Script(–对应的脚本文件– ).scoreMode(“sum”)
.boostMode(CombineFunction.SUM);
2、fieldValueFactor 查询
public FunctionScoreQueryBuilder sortByFucntion(QueryBuilder queryBuilder) {
FunctionScoreQueryBuilder query = QueryBuilders.functionScoreQuery(queryBuilder,
ScoreFunctionBuilders.fieldValueFactorFunction(查询字段).modifier(Modifier.LN1P).factor(1f)).boostMode(“sum”); .add(ScoreFunctionBuilders.fieldValueFactorFunction(查询字段).modifier(Modifier.RECIPROCAL).factor(1)).boostMode(“sum”);
return query;
}
elasticsearch FunctionScore Java API
最新推荐文章于 2023-08-22 18:41:48 发布
本文介绍了如何在Elasticsearch中使用Function Score Query来调整文档的相关性评分,通过script脚本和fieldValueFactor函数实现复杂评分逻辑。示例展示了如何结合不同评分函数,并设置不同的组合模式,帮助开发者更灵活地控制搜索结果。
2270

被折叠的 条评论
为什么被折叠?



