在Field的实际值上使用FunctionQuery idf

时间:2014-09-25 01:26:02

标签: solr solr4

我有一个Solr索引,其中包含一些产品(Desc,ImageUrl& qty)。默认搜索字段是 Desc (即描述),但其他字段仍然存储和编入索引。我希望推广具有更多 独特图片的产品 (即 ImageUrl 的唯一值 - 这基本上是一个GUID路径图像二进制)。我的意思是一个产品,其图像只出现2次,会比其他产品的图像发生5次有所提升。

我认为Function Query idf是最合适的,但需要我指定 Term ,即它被定义为 idf(field,term)< / em> ,但我希望第二个参数是 Field 值。我尝试了以下但是我得到了一个N​​ullPointerException:

&bf=idf(ImageUrl,field(ImageUrl))

我意识到这是因为 field() 总是尝试评估为数值并且失败。无论如何,获得该领域的价值。

我可以说像:

这样的提升功能
&bf=log(qty)

效果很好,即&amp; bf 部分似乎是正确的。

我很欣赏我应该尝试的东西。我正在运行Solr 4.9。

修改:根据以下要求,我要为ImageUrl字段添加架构:

<field name="ImageUrl" type="string" indexed="true" stored="true"/>

0 个答案:

没有答案