0
我有其中有一組值的Solr的領域的搜索結果。 solr能否返回基於該字段而變化的結果? 例如:我的字段包含「ValueA」,「ValueB」和「ValueC」。所以,如果行設置爲3,那麼,而不是返回所有結果「值a」應該給我一個從每個字段的值(考慮到他們有相同的分數)加入變化,以基於一個Solr的場
我有其中有一組值的Solr的領域的搜索結果。 solr能否返回基於該字段而變化的結果? 例如:我的字段包含「ValueA」,「ValueB」和「ValueC」。所以,如果行設置爲3,那麼,而不是返回所有結果「值a」應該給我一個從每個字段的值(考慮到他們有相同的分數)加入變化,以基於一個Solr的場
您可能需要使用Result Grouping/Field Collapsing 或CollapsingQParserPlugin。
的CollapsingQParserPlugin是新的(因爲Solr的4.6),速度更快,爲您的問題比較合適,我想,因爲它不會影響結果的結構。
只需添加到您的solrconfig.xml中:
fq={!collapse field=my_field}
或Solrj:
solrQuery.addFilterQuery("{!collapse field=my_field}");
<queryParser name="collapse" class="org.apache.solr.search.CollapsingQParserPlugin"/>
然後,您可以通過添加以下參數查詢合攏結果
摺疊裝置:對於my_field
每個值僅與保留文件結果集中得分最高。