如何在elasticsearch中使用boost公式的范围查询中使用字段值

flseospp  于 2021-06-13  发布在  ElasticSearch
关注(0)|答案(0)|浏览(308)

我有一个范围查询,根据金额给出结果。但现在我希望这些查询得到提升,并使用elastisearch文档“amount”字段来计算提升公式
例如->
如果amount=1001,那么boost将为0,并给出包含amount>1000的结果
如果amount=900,那么将根据elasticsearch文档“amount”字段计算此提升
假设有5个文档小于900个(123345567678789),那么这些文档将根据它们的升迁而来。公式=(1-(1000-金额*20))

queryBuilder.should(
                QueryBuilders.boolQuery()
                        .should(QueryBuilders.rangeQuery("amount").gt(1000)
                                .boost(0))
                        .should(QueryBuilders.rangeQuery("amount").lte(1000)
                                .boost(1 - (1000 - amount * 20));

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题