有没有办法让Solr/Lucene返回所选文件的排名而不是完整的结果?

joe*_*eln 8 lucene solr rank

我有兴趣查询Solr查询q并在返回{10,20,30,...}文档时绘制一组文档D的回忆.

目前,我正在获得完整的结果,即返回的docid列表(通过solrpy),并迭代它以查找D的排名,即从搜索结果中的D到其索引的映射.我不严格要求映射,只映射排名.

有没有办法让Solr/Lucene返回一组ID而不是完整结果的排名?

解决此问题的其他方法:

  • 对于查询,返回文档d的等级
  • 对于达到指定排名的查询,返回文档d是否存在
  • 从查询q1结果到指定数量的记录,返回由另一个查询q2匹配的记录数

Mat*_*tej 5

您可以按score字段检索排名。

追加&fl=KeyFieldName,score以检索文档ID并为您的查询评分。如果需要所有字段,请追加&fl=*,score到查询中。

有关详细信息,请参见http://wiki.apache.org/solr/SolrRelevancyFAQ#How_can_I_see_the_relevancy_scores_for_search_results


Hug*_*oza 1

不,我想不出 SOLR 或 Lucene 的方法来做到这一点。我认为最简单的解决方案是用一个简单的 HashSet 自己编程......