Solr合并两个查询,然后进行分页

时间:2016-03-08 16:11:03

标签: solr solrj

民间,

我们在solr中有一个要求,我们想要合并两个查询的结果。

E.g
查询一返回[document1,document2,document3,document4]

第二个查询返回[document3,document4,document5,document6]

我们希望结果按照以下顺序[document1,document2,document3,document4,document5,document6]

基本上第一次查询的结果应该优先,而第二次查询则应该删除重复。

我们还希望在solr级别进行分页,因为它为每个查询返回了100万个文档。

查询:

1)如何一起创建执行多个查询并按顺序获取结果。    (首先查询结果应首先显示。应从第二个查询副本中删除)

2)我们想要对整个结果集上的数据进行分页,因此我们无法逐个执行。我们有什么方法可以做到这一点吗?

1 个答案:

答案 0 :(得分:0)

1)你不能在Solr中这样做。你必须在你的应用程序级别添加这个逻辑。
因此,正常执行两个solr查询,然后交叉两组。

2)执行带参数&rows=<no. of rows>的两个查询,这样每个查询最终只能得到5-10行(或者你想要的话),然后将这些较小的集合交叉。