Solr 版本 6.1.0
创建了一个模式,其中一些字段为 indexed=true
,我特别希望 solr 主查询 q
进行搜索。
并且还添加了更多字段,我只是想选择这些字段,因此将它们标记为 stored=true
和 indexed=false
。
现在的问题是,主查询 q=India
正在搜索非索引字段,例如我在图片中指定的国家/地区。
只有当我指定非索引字段的完整值时,它才选择非索引字段。
如何限制 solr 在非索引字段上进行搜索?
最佳答案
根据上面的屏幕截图,您正在将发送到字段 country
的内容复制到字段 _text_
中。当您没有为 Solr 指定要搜索的特定字段时(即您没有使用带有 qf
的 dismax 处理程序之一,或者没有在您的术语前加上字段名称 field:value
),它会返回到默认搜索字段。默认设置为 _text_
。该字段已编入索引,并且由于您正在将国家/地区字段中的内容复制到 _text_
字段中,因此 country
中的值将会命中。
如果您不希望这种情况发生,请不要将country
中的内容复制到_text_
中,或者将您要搜索的实际字段提供给Solr。
关于在非索引字段上搜索 Solr 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46681089/