Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache 确定哪个值在SOLR多值字段类型2中产生了命中_Apache_Solr_Lucene - Fatal编程技术网

Apache 确定哪个值在SOLR多值字段类型2中产生了命中

Apache 确定哪个值在SOLR多值字段类型2中产生了命中,apache,solr,lucene,Apache,Solr,Lucene,另见: 该问题已于2010年1月提出并得到答复 对于新的Solr版本,最新的稳定版本是3.5.0,是否存在任何Solr功能来识别导致命中的多值字段 For Ex: <field name="id">ID</field> <field name="field1">Term1</field> <field name="field1">value2</field> <field name="field1">Term2

另见:

该问题已于2010年1月提出并得到答复

对于新的Solr版本,最新的稳定版本是3.5.0,是否存在任何Solr功能来识别导致命中的多值字段

For Ex: 
<field name="id">ID</field>
<field name="field1">Term1</field>
<field name="field1">value2</field>
<field name="field1">Term2</field>

我有没有办法知道值Term1和Term2导致了从Solr返回的结果的命中?

您可以尝试使用并计算哪个
field1
实例包含
Term

例如,如果您有少于10个
field1
实例,并且每个实例都有少于100个术语,那么使用
positionIncrementGap
的10*100=1000将帮助您使用
位置%1000
计算包含
术语的字段

请注意,您必须在索引时启用才能执行此操作


请注意,这是一种黑客行为,尽管我可以使用它进行测试,但我可能不会在任何严肃的软件中使用它。

呃,获取字段本身的值?或者根据您的想法,获取方面(参见Solr faceting)可能会有所帮助。您的用例是什么?也许改变模式比解决这个问题更重要。
qf=field1&q=Term