我正在使用qf param查询多个字段。但我想知道如何检索给出结果的字段。
示例(不是一个真实的例子):
q={!edismax qf='tag content'}("tablet")AND("pc")
字段值:
doc1:
tag: tablet
content: The test has failled. Use a pc instead.
doc2:
tag: tablet pc
content: The test has worked.
因此,两个文件都将被退回,因为它们的标签/内容都包含平板电脑和个人电脑。 是否有可能知道doc2在标记中都有匹配,而doc1只有1个匹配标记和1个内容? Debugquery似乎没有提供有关此内容的信息。
我知道我可以使用qf boost增加搜索字段的重要性。
答案 0 :(得分:1)
你可以:
我认为1更容易,但它会对你的字段施加一些限制(例如,它们必须存储)
答案 1 :(得分:0)
好的,基于您对我的问题的回答。
不幸的是,Solr目前无法返回与查询匹配的字段作为默认结果文档的一部分。如果查询很简单,那么循环返回的存储字段可能是您最好的选择。突出显示也是一种选择。
此处提出了其他几个选项:http://grokbase.com/t/lucene/solr-user/117nkf36nq/determine-which-field-term-was-found