我正在进行SOLR分面查询,我想在同一个字段上过滤和分面两次。情景是我正在寻找公司和公司有标签'。我的UI在标签构面上有2个多选下拉列表。第一个下拉列表中的选择将进行AND编辑(公司具有所有选定的标签),而第二个下拉列表中的选项将进行OR运算。因此,选择A'和' B'在第一次下拉菜单中选择' C'和' D'在第二种方法中,搜索所有拥有标签的公司(' A' AND' B')和(' C' OR' D' )。
问题在于我的方面计数是错误的,复杂性是我在label_id上查询,但在label_name上是facet。因此,一旦用户选择了OR multiselect,我就将其添加到我的查询中:
fq={!tag=LABELID_OR}LABELID_MFACET:("9" OR "18")
facet.field=LABELNAME_MFACET <-- from the AND filter
facet.field=LABELID_MFACET <-- from the AND filter
facet.field={!key=LABELNAME_OR ex=LABELID_OR}TAGNAME_MFACET
但是一旦我选择了OR滤波器,计数就会降到零(0)。所以排除似乎不起作用?
答案 0 :(得分:0)
好的,一切正常,导致问题的是UI。对我感到羞耻。