Function 具有ex和tag函数的Solr多面
我使用的是Solr4.10,我们的要求是有多个方面。每个方面都应该过滤,只影响选定的方面,而不影响其他方面 例如,假设品牌和类型有两个方面。当用户选择品牌作为尼康,那么它应该影响类型方面,而不是品牌方面。类型的类似行为 我尝试用tag和ex函数实现,查询结果如下所示Function 具有ex和tag函数的Solr多面,function,solr,facet,solr-query-syntax,Function,Solr,Facet,Solr Query Syntax,我使用的是Solr4.10,我们的要求是有多个方面。每个方面都应该过滤,只影响选定的方面,而不影响其他方面 例如,假设品牌和类型有两个方面。当用户选择品牌作为尼康,那么它应该影响类型方面,而不是品牌方面。类型的类似行为 我尝试用tag和ex函数实现,查询结果如下所示 /select?q=query&wt=json&start=0&rows=10&facet=true&fq={!tag=brand}brand:(Canon,Nikon)&fq={!t
/select?q=query&wt=json&start=0&rows=10&facet=true&fq={!tag=brand}brand:(Canon,Nikon)&fq={!tag=type}type:(TV)&facet.mincount=1&facet.field={!ex=brand}brand&facet.field={!ex=type}type&fl=id,brand,type
这在大多数情况下都可以正常工作,但是当结果为零时,Solr会以某种方式返回其中一个方面的方面。对于上面的查询,我在类型中获得了一些值,即使响应中没有文档
下面是我们得到的回应
{
"response": {
"numFound": 0,
"start": 0,
"docs": []
},
"facet_counts": {
"facet_queries": {},
"facet_fields": {
"type": [
"TV",
4
],
"brand": []
},
"facet_dates": {},
"facet_ranges": {},
"facet_intervals": {}
}
}可能facet.mincount被设置为大于零的数字try facet.mincount=0,并检查againI trued facet.mincount=0,它不会修复该问题。原因是在TYPE字段中返回了4项,因此仍然显示facet。Solr中是否存在这种方面/过滤器的已知缺陷。任何帮助都将不胜感激。谢谢