我开始与Solr合作,但遇到了一些问题。问题是我有一份包含人员数据的文件。该文档可以包含两个或多个相同的人。我发现我可以使用所谓的FieldCollapsing对我的结果进行分组,这很好用。例如,我有一个104人的文件,其中78个条目是双倍的,所以我的分组结果是26。
现在我想知道这26个人中有多少是男性还是女性,如果我添加group.query并在那里包含性别分组,我会得到结果整数1返回。我怎样才能获得男性和女性的价值观?我是否需要进行第二次查询,还是可以修改查询?
如果您需要更多信息或代码,请告诉我。
答案 0 :(得分:1)
我之前处理过同样的问题,但是在索引中有大量文档的情况下,获取唯一的facet数字会比得到整数更慢。
您需要做的是在网址中添加group.facet = true或在solrconfig中添加默认值:
<lst name="defaults">
<str name="group">true</str>
<str name="group.field">PersonId</str> <!-- Group by your person id here -- >
<str name="group.facet">true</str> <!-- this is what you are after -->
</lst>