1

全部:

[更新]

阅读调试说明后,似乎 qf 将仅扩展关键字而不指定字段。

==================================================== ==================

当我学习使用edismax查询解析器时,它说 qf 参数是:

查询字段:指定索引中要执行查询的字段。如果不存在,则默认为 df。

其目的是生成所有字段与查询词的组合。

但是,如果我们已经在查询(q 参数)中指定了字段,我想知道当我在 qf 中指定另一个不同的字段时会发生什么?

例如:

q=title:epic
defType=edismax
qf=content

谁能解释一下 SOLR 如何解释这个查询?

谢谢

4

2 回答 2

1

当您指定 qf 时,这意味着您希望 solr 在这些“qf”字段中搜索“q”字段中的任何内容。因此,您的第一行和第三行相互矛盾:

q=title:epic
defType=edismax
qf=content

如果您要搜索内容字段包含与您的搜索词匹配的任何内容的任何文档,但这些搜索词作为“q”中的标记,由 +OR+ 分隔。

像这样...

q=I+OR+like+OR+books+ORand+OR+games
defType=edismax
qf=content
于 2016-04-05T21:23:02.077 回答
0

q=title:epic. 说明您已经将查询字段设置为title,所以qf参数不能设置为“content”,这种情况下,您肯定没有查询结果。您将 qf 参数留空或将其设置为“标题”

于 2015-08-10T14:27:03.543 回答