查询应返回结果和类型计数?

时间:2012-11-13 07:53:54

标签: solr

当前查询示例(搜索'test'):

q=lastName:test*^10 firstName:test*^9 userLastNameLowerBoost:test*^8      
  userFirstNameLowerBoost:test*^7 member:test*^6 title:test*^5 
  message:test*&start=0&rows=5

现在我的solr索引有几种类型的结果(人物,消息等),我的结果只包含boost命令的前5个结果。但是我还需要计算所有类型的结果(例如,人数= 40,消息数= 54,......)。如果我不通过'start'和'rows'限制查询,我可以在java中计算,但这不应该是分页感(加载整个结果)。所以我可以添加子查询如何计算类型(fieldname'documentType' - >可以是1 = person,2 = messages,..)。

我希望你能找到我想要的东西:)

3 个答案:

答案 0 :(得分:1)

您应该只需添加&facet=true&facet.field=documentType&facet.mincount=1即可获得整个索引中的documentTypes计数。

答案 1 :(得分:0)

您可以使用字段分组作为描述here。或者,facet search,它取决于您的查询类型

答案 2 :(得分:0)

您可以为每个文档添加一个字段,并按类型填充该字段。人,消息。
然后,您可以在此字段上进行分面,这将为您提供结果集中每种类型的计数。