2014-03-13 57 views
0

我开始使用Solr,但有一些问题。问题是我有一个包含有关人员数据的文档。该文件可以包含两个或多个相同的人。我发现我可以使用所谓的FieldCollapsing对我的结果进行分组,这很好。例如,我有104人的文件,其中78项是双重的,所以我的分组结果是26.Solr分组和小平面

现在我想知道这26个人中有多少是男性或女性,并且如果我添加组,这就开始了我的问题。查询并包括那里作为结果整数1返回的性别。我怎样才能得到男性和女性的价值?我是否需要进行第二个查询,或者是否可以修改我的查询?

如果您需要更多信息或代码,请让我知道。

回答

1

我已经处理过相同的问题,但是索引中的文档数量很多,获取唯一的facet数字会比获取整个数字慢一点。

你需要做的是将group.facet = true添加到URL或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>