0

我正在使用 SOLR 1.4。在搜索索引中,我存储产品和类别。每个产品可能有多个类别。类别应该影响文档的分数。

例如

Category 1 (flag 8)
Category 2 (flag 4)
Category 3 (flag 2)
Category 4 (flag 1)


Product A: Category 1 + Category 2
Product B: Category 1 + Category 3 + Category 4

在这种情况下,产品 A 的得分应该高于产品 B:8 + 4 > 8 + 2 + 1

如何在 SOLR 1.4 中实现这一点?任何帮助将不胜感激!

4

1 回答 1

1

如果您不太关心相关性,就像您在评论中所说的那样,我建议您使用排序并避免试图影响 solr 分数。您可以添加一个包含与文档类别相关的标志总和的字段,然后使用该字段进行排序。

正如您所指出的,您不能在 solr 1.4 中使用 sort by function,但值得一提的是,如果您升级到 3.x,您可以拥有一个包含标志列表的多值字段并通过函数计算总和,将其用于排序

在这两种情况下,对于具有相同标志和相同标题的文档,您将查看 solr 分数,这对您来说并不重要。

于 2012-04-26T09:49:58.647 回答