Solr搜索方面:我如何使它们计算产品而不是产品种类

dan*_*ley 1 solr

我正在做的商店出售服装.每件衣服都有多种款式.例如衬衫A可能会进来:红色大号,红色中号,蓝色大号,蓝色中号,白色大号和白色中号.

起初我将每个品种添加为solr doc.因此,对于上述产品,我添加了6个solr文档,每个文档都具有相同的产品ID.我得到了solr,按产品ID对结果进行分组,一切都很完美.

然而,小平面计数是所有品种数量而不是产品数量.所以例如..只是将它限制在上面的一个产品 - (如果这是系统中唯一的产品说)..方面计数将显示:

红色(2)蓝色(2)白色(2)

哪个是正确的,每种颜色都添加了2个文件.但我真正想看到的是:

红色(1)蓝色(1)白色(1)

因为每种颜色只有一种产品.

所以现在我想,为了做到这一点,我需要让每个solr文档成为一个产品.

在这种情况下,我会添加产品,并添加字段"颜色"3倍红色,一个蓝色,一个白色,并添加字段大小3次.但是现在solr并不真正知道每种颜色的尺寸.也许我只有白色的小.

什么是正确的方法来使这个方面成为应有的重要因素?

dan*_*ley 8

结果我可以在这里使用分组(字段折叠)来做到这一点

http://wiki.apache.org/solr/FieldCollapsing#Request_Parameters

特别是这些参数添加到查询中

group=true
group.field=product_id"
group.limit=100
group.facet=true
group.ngroups=true
Run Code Online (Sandbox Code Playgroud)

group.facet是真正使facet与我想要的组一起工作的那个.