我可以根据重复的字段查找文档吗?

时间:2019-05-09 14:36:50

标签: solr lucene facet

我有一个Solr服务器,其数据格式如下:

this.state = {
    application: {A:["A-1","A-2","A-3"], B:["B-1","B-2","B-3"], C:["C-1","C-2","C-3"],D:["D-1","D-2","D-3"]},
    userChosenApplication: ""
}

我需要找到我上面写的文件。具有相同“ text_1”和“ text_2”值但ID不同的文档。

我尝试使用构面,但是不确定是否有帮助。首先,它仅返回重复项的计数,我需要这些文档的ID。其次,我不确定在多个字段之间进行切入是否符合我的要求。我不确定: { id: 1, text_1: "some_text1", text_2: "some_text2", }, { id: 2, text_1: "some_text1", text_2: "some_text2", } 向我显示了同时具有这两个字段的文档数。

谢谢,我对Solr不太了解。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:1)

我认为,切面是完成此操作的最佳选择,但正如您注意到的那样,您将至少需要发出两个查询:一个要获取切面,另一个要获取属于该切面的实际文档(即重复项)就您而言)

要使多方面适用于您要尝试的工作,您需要使用PivotFaceting(https://lucene.apache.org/solr/guide/7_0/faceting.html#pivot-decision-tree-faceting)。语法为facet=on&facet.pivot=field1,field2

确保用于构面的字段是string字段,而不是text字段。