我想知道如果在不使用“fieldname:query”-syntax 的特殊字段中找到查询,是否可以使用 Solr 3.4 来提升搜索结果。
让我解释:
我的索引中有几个字段。其中之一被命名为“缩写”,并充满了像 AVZ、JSP、DECT 等文本。
为了能够在纯粹搜索“AVZ”时找到结果,我添加了一个
<copyField source="abbreviation" dest="text"/>
在我的 schema.xml 中。字段文本是我的 defaultSearchField。
在我看来,这不是最好的解决方案。所以我试图找出,如果可以在所有字段中搜索“AVZ”,并且如果在字段缩写中找到字符串,则结果条目应该被提升(增加分数),以便它将被列出在结果列表中的第一个条目。与使用abbreviation:AVZ AVZ作为查询相同。
我能想到的另一种可能性是分析查询。如果找到像 "AVZ" 这样的子字符串,查询将附加abbreviation:AVZ。但在这种情况下,我必须能够找出哪些缩写被索引。是否可以使用 SolrJ 从 Solr 索引中检索字段的所有可能术语?
最好的问候托比亚斯