我需要基于多个类别来分辨sorl,3分类是准确的。我遇到的问题是我需要区别于什么是基本上单独的查询,但我试图确定我是否可以用一个查询。在essense我想做一个filter.query,但不是计数,我想得到匹配的值。
问题是,对于相同的值,我可以对多个字段进行匹配
field1=*bah* OR field2=*bah* or field3=*bah*
我面对field1,field2和field3
查询确实返回那些字段匹配的文档,但是在facet上,对于field1,不包括matchign field1 bah ..但包括匹配field2和field3的文档,其field1值不是 bah 。
id基本上喜欢使用fq = {!tag}和facet.field {!ex}来生成field1的facet,只有field1匹配值,facet 2没有field2 matchign value ..等等。
在solr中使用一个查询是否可以实现?
这是我的基本设置
<document>
<field1>bah boo</field1>
<field2>bah bing</field2>
<field3>boo bar</field3>
</document>
<document>
<field1>bar boo</field1>
<field2>bah bong</field2>
<field3>bah bar</field3>
</document>
<document>
<field1>bar boo</field1>
<field2>ding bah</field2>
<field3>bog bar</field3>
</document>
<document>
<field1>ban bah</field1>
<field2>ban bing</field2>
<field3>bbah bar</field3>
</document>
我想返回
<facets>
<field1>
<str>bah boo</str>
<str>ban bah</str>
</field1>
<field2>
<str>bah bing</str>
<str>bah bong</str>
<str>ding bah</str>
</field2>
<field3>
<str>bah bar</str>
<str>bbah bar</str>
</field3>
</facets>
答案 0 :(得分:0)
如果您包括突出显示以及分面,您的实际匹配将在highlighting
结构中返回。但是,它不会为您提供数字匹配,并且它只会为您的查询返回的行提供匹配项。实际上,我不确定你是否需要使用刻面来完成你想要做的事情。
我可能错了,但您的问题听起来与此类似: How to return column that matched the query in Solr..?
希望这有帮助。