Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Solr edismax。如何检索给出查询结果的字段_Solr_Edismax - Fatal编程技术网

Solr edismax。如何检索给出查询结果的字段

Solr edismax。如何检索给出查询结果的字段,solr,edismax,Solr,Edismax,我正在使用qf参数查询多个字段。但我想知道如何检索给出结果的字段 示例(非真实示例): 字段值: doc1: tag: tablet content: The test has failled. Use a pc instead. doc2: tag: tablet pc content: The test has worked. 因此,这两个文档都将被返回,因为它们的标签/内容中都

我正在使用qf参数查询多个字段。但我想知道如何检索给出结果的字段

示例(非真实示例):

字段值:

      doc1:
           tag: tablet
           content: The test has failled. Use a pc instead.
      doc2:
           tag: tablet pc
           content: The test has worked.
因此,这两个文档都将被返回,因为它们的标签/内容中都有平板电脑和pc是否有可能知道doc2在标记中有两个命中,doc1在标记中只有一个命中,在内容中只有一个命中?Debugquery似乎没有提供相关信息

我知道我可以使用qf提升来提高搜索字段的重要性

您可以:

  • 使用
  • 使用debugQuery=true请求调试信息,并解析评分信息以找出答案

  • 我认为1更简单,但它对您的字段施加了一些限制(例如,它们必须存储)

    根据您对我的问题的回答,确定

    不幸的是,Solr目前无法将与查询匹配的字段作为默认结果文档的一部分返回。如果查询很简单,那么在返回的存储字段上循环可能是最好的选择。突出显示也是一种选择


    这里还建议了几个其他选项:
    http://grokbase.com/t/lucene/solr-user/117nkf36nq/determine-which-field-term-was-found

    此操作的目的是什么?如果您可以让我们知道您试图对这些结果做什么,这会有所帮助。让用户知道结果是从文件内容还是从用户添加的标记中找到的。我的字段被存储,因此这不是问题。我不知道它击中了哪块地。我会试着看看这是否有效。我也会说,试着突出显示。这也是对类似问题的回答
          doc1:
               tag: tablet
               content: The test has failled. Use a pc instead.
          doc2:
               tag: tablet pc
               content: The test has worked.