使用字段值影响Solr搜索结果

时间:2011-03-11 02:21:42

标签: search lucene solr

我最近开始尝试使用Solr。我的数据已编制索引并可搜索。我的问题在于排序。我有三个领域:作者,标题,销售。

我想搜索作者&标题字段,但具有销售价值影响分数,以便即使初始匹配分数不是最高的,与较高销售额的匹配也会向顶部移动。

根据销售情况进行简单排序不会产生有效结果,因为搜索字词的得分几乎为0,但一般来说,很多销售额可能会超过完全匹配从未出售的期限。

我看到的结果是,虽然很棒的匹配,但不一定是我希望在列表顶部显示的产品。

2 个答案:

答案 0 :(得分:4)

如果您正在使用dismax处理程序,则可以添加boost function(bf)以及要增强的字段,例如:

http://...?q=foo&bf="fieldValue(sales)^1.5"

...使销售数字的价值大打折扣。当然,如果你想以某种方式破坏销售数据,你可以使功能更加复杂。

More info很容易找到。

您可能只想在索引时执行此操作,因为销售数据不会随时更改。

答案 1 :(得分:0)

您也可以使用Index-time boosting 以下是using function queries to influence scoring的详细信息。