从SOLR返回的结果中删除重复的文档

时间:2015-07-06 10:18:34

标签: ruby-on-rails-4 solr sunspot-rails sunspot-solr

我有一个场景,我在其中搜索文档中的no pan字符串。在我的应用程序中,我们向SOLR发送两个查询请求,即一个是Exact查询(即短语查询),它返回精确结果,下一个查询是AND查询。但恰好Exact查询的结果也包含在AND查询中,因此我想从AND查询结果中删除这些记录。那么可以从SOLR中删除吗?

我正在使用sunspot gem和rails。

2 个答案:

答案 0 :(得分:0)

如果您的文档包含任何唯一字段,则在第二个查询中将该字段用作非查询。

例如,如果您将id作为唯一字段。 然后从第一个查询中获得那些ID

并将第二个查询放入

-id:(123 OR 345)

因此,从第二个查询结果中,这些将被过滤...

答案 1 :(得分:0)

或者只是您可以重新制定第二个请求以包含AND但排除完全匹配。

更新后的第二个请求将取消当前第一个请求(排除完全匹配)以及当前第二个请求(通过和操作)。