我正在改进使用 Solr 3.6 的现有搜索系统
我正在尝试使用以下功能来提升搜索结果:
{!boost b=recip(sub(1,floor(strdist("someText",myField,jw))),1000000,1,1)}searchText
- searchText - 用户搜索的一些文本;
- myField - 自定义索引文档的字段,值可以为空或非空字符串;
简而言之,此函数将myField的值不等于someText的所有搜索结果除以1000001分数。这样,具有指定myField值的结果将按其原始分数排序。
因此,该字段在那里,该字段中存在该值,但结果的分数也被划分并且结果在某个深处......
当我使用:
fq=myField:[* TO *]
Solr 过滤掉字段值不是空字符串的结果。所以,公认...
还有另一个遗留字符串字段。当我使用该字段应用我的函数时,一切正常。但是当我使用我的领域时它失败了。
您对可能出现的问题有任何想法吗?我应该寻找什么?
请帮忙。我已经花了很多时间没有成功,但我是 Solr 的新手,到目前为止还无法解决这个问题......
谢谢!