【发布时间】:2011-11-19 16:50:03
【问题描述】:
我有各种数值的内容,数值越高表示(理论上)更有价值的内容,我想排名更高。
例如:
- 平均评分 (0 - 5)
- cmets 数(0 - 随便)
- 来自其他页面的入站链接引用数(0 - 随便)
- 我应用了一些任意数字来表示我认为内容的重要性(1 - 随便)
这些可以被 Lucene 索引为一个数值,但是我如何告诉 Lucene 在它的排名算法中使用这个值呢?
【问题讨论】:
标签: lucene lucene.net
我有各种数值的内容,数值越高表示(理论上)更有价值的内容,我想排名更高。
例如:
这些可以被 Lucene 索引为一个数值,但是我如何告诉 Lucene 在它的排名算法中使用这个值呢?
【问题讨论】:
标签: lucene lucene.net
您可以在索引时使用“Field.SetBoost”设置此值。
【讨论】:
根据您希望如何进行,您可以按照@LB 的建议在索引时设置提升,或者如果您想使其动态化,即在搜索时间而不是索引时间,您可以使用ValueSourceQuery 和@987654323 @。
您可以在我前段时间提出的问题中看到示例: Lucene custom scoring for numeric fields(该示例使用 Lucene 3.0 进行了测试)。
【讨论】: