【问题标题】:Elasticsearch (round-robin sorting)Elasticsearch(循环排序)
【发布时间】:2013-06-21 12:43:06
【问题描述】:

考虑以下产品列表,目前这些产品按名称排序,这会产生不公平的结果,可能导致以下输出(仅根据其“幸运”产品命名,将 1 家公司置于结果首位)

公司 x 产品 1
公司 x 产品 2
公司 x 产品 3
公司 y 产品 a
公司 z 产品 a
公司 y 产品 b
公司 z 产品 b
公司 y 产品 c
公司 z 产品 c

如何使用 elasticsearch 对其进行排序,以便它以“循环”顺序出现,也就是说,在重复之前选择每个唯一项目一次。所以上面的列表会是这样的:

公司 x 产品 1
公司 y 产品 a
公司 z 产品 a
公司 x 产品 2
公司 y 产品 b
公司 z 产品 b
公司 x 产品 3
公司 y 产品 c
公司 z 产品 c

我发现这个问题要求 LINQ:LINQ order by "round robin"

【问题讨论】:

标签: sorting sql-order-by elasticsearch


【解决方案1】:

除非您找到某种脚本解决方案,否则最好的选择是执行多个弹性搜索搜索并手动合并结果。您至少可以使用 Multi Search API 在单个请求中执行所有搜索。

【讨论】:

    猜你喜欢
    • 2016-04-12
    • 1970-01-01
    • 1970-01-01
    • 2013-05-25
    • 2017-01-07
    • 2016-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多