如果我搜索Authorname "Title of Work"
,则记录不会出现,但如果我搜索"Title of Work" Authorname
,那么他们会这样做。
为什么会发生这种情况?
这是在Coldfusion上运行的solr。唯一的变化是条款的顺序。
示例冷血代码。请注意,在此示例中,第一个获得2个匹配,而第二个获得1.因此看起来这取决于搜索的实际字符串,但它仍然意味着更改术语的顺序会更改返回的记录数。
我可以理解它更改了返回的记录的顺序,因为更改顺序会改变结果的相关性。但是所有3条记录都应该出现在任何一条记录中。我会看看我是否可以找到solr日志并发布它们,这可能会有所帮助。
<cfset term1='"globalization of information"'>
<cfset term2='Reiter'>
<cfsearch name="ExampleOne" criteria='#term1# #term2#' collection="abstracts,fulltexts">
<cfoutput>#ExampleOne.recordcount#</cfoutput>
<cfsearch name="ExampleTwo" criteria='#term2# #term1#' collection="abstracts,fulltexts">
<cfoutput>#ExampleTwo.recordcount#</cfoutput>
<cfabort>
输出:
2 1
答案 0 :(得分:0)
试着用单引号给出搜索词,我已经在CF 10上测试了它,它对我来说很好。 所以不要: cfset term1 ='“信息全球化”'
试试这个 cfset term1 =“'信息全球化'”