如何对 solr 结果进行排序以限制连续结果的数量



假设我正在运行一个按分数排序的 solr 查询(默认值)。我有一个字段,"品牌",其中包含福特、通用、丰田等。我希望返回查询结果,以便任何特定品牌只能有三个连续的结果?即使我的查询的前 100 个结果是丰田,我仍然希望第 101 个元素被采用并显示在第 4 位(以便一个序列中只能显示三辆丰田汽车)。

我需要能够浏览结果。

我正在使用RoR/太阳黑子仅供参考。

这可能吗?

不确定你是否能得到你想要的,但我建议看看结果分组。它允许您对特定字段具有相同值的结果进行分组,例如您的案例中的brand。然后,您可以通过 group.limit 参数(默认为 1)定义每个品牌所需的结果数。然后,您可以通过 group.offset 参数对分组结果进行分页。

只要您的brand字段不是多值的,它就应该有效。

相关内容

  • 没有找到相关文章

最新更新