3

我正在做一个需要从 Solr 索引中选择文档的项目。结果按名为 rank 的字段排序。然而,问题是,前 3 个结果应该是溢价结果,它们由不同的字段定义,例如溢价。

现在我知道我可以对结果进行分组,例如:

group.query=rank[0 TO 100]

group.query=premium[1]

我可以通过添加来限制这些结果

group.limit=LIMIT

但此限制适用于所有组。

有没有办法只将此限制应用于第一组,以便我可以将高级结果限制为仅返回 3 个文档?

4

1 回答 1

5

看不到那个选项。

如果您总是必须返回一些优质结果,那么使用 group-by 可能会很棘手 - 如果结果集(假设您使用 'rows' 参数将结果集限制为某个值)不包含任何优质结果怎么办?

也许,将其分解为非高级查询并将 LIMIT 用于“行”参数和高级查询,其中“行”= 3 更好?

只是一个意见!

有一个请求允许在一个请求中进行多个查询待处理 - https://issues.apache.org/jira/browse/SOLR-1093

于 2013-07-16T18:25:42.003 回答