【问题标题】:How can I sort my solr results to limit the number of consecutive results?如何对我的 solr 结果进行排序以限制连续结果的数量?
【发布时间】:2012-11-30 14:56:08
【问题描述】:

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

我需要能够翻阅结果。

我正在使用 RoR/sunspot 仅供参考。

这可能吗?

【问题讨论】:

    标签: solr sunspot websolr


    【解决方案1】:

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

    只要您的 brand 字段不是多值的,它就应该可以工作。

    【讨论】:

      猜你喜欢
      • 2021-08-25
      • 1970-01-01
      • 1970-01-01
      • 2017-09-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-09
      相关资源
      最近更新 更多