搜索所有solr字段的值

时间:2016-08-12 14:06:24

标签: solr

我想搜索solr中的所有字段以获取特定值。如果我搜索title:six我会收到我的结果,但是如果我搜索*:six我就不会。我有一个all字段,用于收集有关已编制索引的所有字段的信息,因此,如果我搜索all:six,我也会得到我的结果,但是我想专门搜索{{1} }

在schema.xml中,我注意到了一个指令*:six,但我不认为它的工作方式正常(好吧 - 如果我保留它,或者删除它就没有任何改变)

有没有办法完成我追求的目标?

1 个答案:

答案 0 :(得分:3)

搜索 *:六个不是合法语法,永远不会作为全局搜索。它很可能会解析为实际文本,而是搜索该关键字的默认字段。如果默认字段(由 df 参数定义,很可能全部)执行标准标记化,则会在冒号上拆分并在默认情况下搜索“*”和“6”领域。

因此,它可能一直是对Solr语法的误解,并且随时都可能崩溃。如果该配置仍在运行,则启用调试标志将准确显示如何解析查询以及搜索哪些字段。这就是你需要的所有证据。

正确的方法是使用copyField并将字段 all 声明为默认搜索字段。这就是Solr开箱即用的例子。