假设我正在运行一个按分数排序的 solr 查询(默认)。我有一个字段“品牌”,其中包含福特、通用、丰田等。我希望返回查询结果,以便任何特定品牌只能有三个连续的结果?即使前 100 个结果是我查询的 Toyota,我仍然希望第 101 个元素被取出并显示在第 4 位(这样只有三辆 Toyota 汽车可以按顺序显示)。
我需要能够翻阅结果。
我正在使用 RoR/太阳黑子仅供参考。
那可能吗?
不确定你是否能得到你想要的,但我建议你看看result grouping。它允许您对特定字段具有相同值的结果进行分组,就像brand
您的情况一样。group.limit
然后,您可以通过参数(默认 1)定义每个品牌需要多少结果 。然后,您可以通过group.offset
参数对分组结果进行分页。
只要您的brand
字段不是多值的,它就应该起作用。