我想问一下是否有人知道如何使用"qs"参数指定字段。我的意思是,例如,有一个包含此字段和内容的文档
- id:1
- 名称:足球
- 关键词:足球,进球,守门员
- 短语关键词:英超,冠军联赛,金奖
然后,我使用参数为qs:20的Dismax搜索:"prime awards"。因此,参数将类似于:
defType:q=foo&defType=dismax&q:"premier awards"&qs:20
结果将是"名称"内容,对吧,但我只是将qs:20应用于字段短语关键字,因为如果搜索:"goal league"与任何结果都不匹配,尽管如果我将搜索中断为:"goel prime"或goal OR prime。
因为我想这样搜索:
phrase_keywords:"goal premier" or keywords:goal OR keywords:premier
但在phrase_keywords中带有"qs"(接近度),对于关键字是正常搜索。
否,不能在qs参数中指定字段。通常qsparam与qfparam一起使用,后者表示查询字段。
有关DisMax解析器语法的更多信息,请查看此处-https://cwiki.apache.org/confluence/display/solr/The+DisMax+查询+分析程序
关于此查询
phrase_keywords:"目标首要"或keywords:goal或keywords:首要
我想您可以通过组合几个查询来实现