2012-08-24 65 views
0

我有下面提到的SOLR查询哪些工作正常。替换SOLR输出字段值

查询: “复杂条件1” 或查询: “复杂条件2”

我得到的结果是4号文件 - 2条件1和2的条件2。我需要知道文档属于哪种情况。 由于条件太复杂,我无法从结果中找出答案。 我想要做的是更改输出中“状态”字段的值。 可以说,condition1的状态=激活,condition2的状态=激活。

状态的当前值不准确,因为状态是根据我使用的条件决定的。

有没有办法覆盖SOLR中任何字段的输出值?

回答

0

您是否尝试过使用突出显示来确定哪些文档匹配哪个条件?如果打开突出显示(&hl=on&hl.fl=<fields_you're_trying_to_match>),则Solr将在结果结构的末尾返回一个结构(无论您是以JSON还是XML返回结果),称为“突出显示”。该结构反过来将包含根据索引的唯一键(如果存在)的元素匹配的结构。

<lst name="highlighting"> 
    <lst name="1"> 
     <arr name="title"> 
      <str>Bob <em>Jones</em></str> 
     </arr> 
     <arr name="category"> 
      <str><em>Jones</em> Family</str> 
     </arr> 
     <arr name="description"> 
      <str>This is a book about Bob <em>Jones</em>, the patriarch of the <em>Jones</em> Family.</str> 
     </arr> 
    <lst> 
<lst> 

这里更多: How to return column that matched the query in Solr..?

现在我道歉,这不回答你的问题的后半部分,但给你的第一部分提供一些帮助。