多字段上的Solr Demax查询

多字段上的Solr Demax查询,solr,dismax,Solr,Dismax,我试图在多个字段上执行solr Demax查询,但对语法有点困惑 我的核心部分包含了大量的播客插曲。索引中的字段包括插曲编号、插曲标题、插曲描述和插曲关键字 现在,当我进行查询时,我想在“插曲\标题”、“插曲\描述”和“插曲\关键字”字段中搜索查询词,不同字段的升调不同 所以当我搜索“绝地”时,我建立的查询如下: http://localhost:8983/solr/episode_core/select? &defType=dismax&q=jedi&fl=EP

我试图在多个字段上执行solr Demax查询,但对语法有点困惑

我的核心部分包含了大量的播客插曲。索引中的字段包括插曲编号、插曲标题、插曲描述和插曲关键字

现在,当我进行查询时,我想在“插曲\标题”、“插曲\描述”和“插曲\关键字”字段中搜索查询词,不同字段的升调不同

所以当我搜索“绝地”时,我建立的查询如下:

http://localhost:8983/solr/episode_core/select?
    &defType=dismax&q=jedi&fl=EPISODE_ID,EPISODE_TITLE,EPISODE_DESC,EPISODE_KEYWORDS
    &qf=EPISODE_TITLE^3.0+EPISODE_DESC^2.0+EPISODE_KEYWORDS
然而,这似乎不起作用-它返回零记录

当我放置一个如下的默认字段时,它现在起作用了,但这是一种垃圾,因为这意味着我没有从搜索所有3个字段中得到结果:

http://localhost:8983/solr/episode_core/select?&df=EPISODE_DESC
    &defType=dismax&q=jedi&fl=EPISODE_ID,EPISODE_TITLE,EPISODE_DESC,EPISODE_KEYWORDS
    &qf=EPISODE_TITLE^3.0+EPISODE_DESC^2.0+EPISODE_KEYWORDS
这里有我遗漏的东西吗?我认为您可以搜索多个字段,我认为'qf'参数意味着您不需要提供默认字段参数


非常感谢您的帮助……

您的想法是正确的。如果您已经为Demax定义了qf(查询字段),那么就不需要指定df(默认字段)


你能更具体地说明什么不起作用吗


另外,请阅读
solrconfig.xml
中的内容,因为您的配置可能发送的参数与您在URL中指定的参数不同


(例如,如果您看到一条要求您提供df的特定错误消息)

是-现在将编辑问题-我写这篇文章时非常累。有点不清楚。。。TomIt返回零条记录,即使我们知道索引中有很多记录与查询匹配。快速调试:更改
q=*:*
(全部匹配)并确保索引中有数据。如果您有数据,那么它将返回到分析页面(在您的上一篇文章中提到),以查看scheme.xml中分析器设置的影响。您还可以将
debugQuery=true
作为参数传递,并查看如何在三个字段中重写“jedi”。如果您的schema.xml仍然与另一篇文章中的相同,
debugQuery=true
将帮助您确保不会被区分大小写的字段名绊倒。(例如使用
剧集描述
等,而不是所有的大写字母)