我有各种数值的内容,更高的值表示(理论上)更有价值的内容,我想要排名更高。
例如:
这些可以被Lucene索引为数值,但是如何告诉Lucene在其排名算法中使用此值?
答案 0 :(得分:4)
您可以在编制索引时使用“Field.SetBoost”设置此值。
答案 1 :(得分:1)
根据您想要进行的具体操作,您可以按照@LB的建议设置索引,或者如果您想使其动态化,即在搜索时而不是索引时,您可以使用ValueSourceQuery
和CustomScoreQuery
。
您可以在我前一段时间问过的问题中看到示例: Lucene custom scoring for numeric fields(该示例使用Lucene 3.0进行了测试)。