Solr仅使用qf:参数查询特定字段

时间:2017-03-21 07:45:18

标签: indexing solr field

我试图在特定字段中搜索特定的一组关键字keyword1keyword2keyword3。我是通过使用查询来完成的,

  

http://localhost:8983/solr/gettingstarted_shard2_replica2/browse?q=keyword1   关键字2关键字3& qf = field1

但是,当我运行它时,它会在另一个字段keyword2中找到field2并返回该行!据我了解,qf:field1参数限制了仅field1对所有关键字的搜索?

我在哪里不正确?是因为我定义的架构吗?

我的架构配置是:

<field name="field1" type="text_general" indexed="true"/>
<field name="field2" type="strings" indexed="false"/>

2 个答案:

答案 0 :(得分:0)

免责声明:我是Solr Query Debugger Google Chrome插件的作者。

我建议使用此调试器以查看执行的内容并解释为什么您的查询有这种奇怪的行为。

只需在浏览器中执行solr查询,然后启动Solr Query Debugger插件。

在插件页面中,您会看到DebugEcho标签,其中说明了Solr执行的操作。在Explain标签中,您会看到以树形结构的分数解释。

答案 1 :(得分:0)

您使用的是标准(默认)查询解析器还是eDisMax?如果是标准(最有可能),那么您需要使用 df 参数。

qf 参数与eDisMax一起使用,但您还需要defType = edismax

启用调试标志将显示实际发出搜索的字段。