2014-07-27 115 views
0

我正在使用Sorl v3.6.1并已成功管理索引数据以及使用Apache Tika索引二进制项目。我使用SolrNet来拉出这些数据。不过,我有一个问题,我想将2个结果链接在一起。通过SolrNet合并Solr查询结果

现在考虑下面的XML(这只是为了演示):

<doc> 
    <id>263</id> 
    <title>This is the title</title> 
    <summary>This is the summary<summary/> 
    <binary_id>994832</binary_id> 
</doc> 
<doc> 
    <id>994832</id> 
    <title>This is the title</title> 
    <summary>This is the summary<summary/> 
    <text>this is the contents of the binary</text> 
</doc> 

是否有可能(通过SolrNet)上述两个结果合并在一起,这样当用户搜索这个内容的二进制它也返回第一项中的数据?

在我的例子中,你可以看到第一个项目包含二进制的ID(994832),所以我最初的想法是我需要做2个查询并以某种方式合并它们?

不确定如何做到这一点,所以任何帮助将不胜感激。

回答

0

您可以尝试使用联接类型的查询来做些简单的事情,但要注意性能影响。这是我前一段时间的帖子,我试图做类似的事情。 solr grouping based on all index values

或者,更好的解决方案,当且仅当你打算在..将同一ID分配给需要检索为一组,按您的示例中,所有的文件之前有点按摩数据,这将是将二进制字段添加到第二个文档并为其分配994832值。你将能够非常干净地使用Solr分组来将这些项目分组为一个,然后将分组分类到只返回你想要的项目。