Search 使用自联接搜索多值字段

Search 使用自联接搜索多值字段,search,solr,Search,Solr,我有以下(简化的)solr模式: <schema name="documents" version="1.1"> <uniqueKey>id</uniqueKey> ... <fields> <field name="id" type="string" indexed="true" stored="true" required="true"/> &l

我有以下(简化的)solr模式:

<schema name="documents" version="1.1">
  <uniqueKey>id</uniqueKey>
  ...
  <fields>
    <field
      name="id"
      type="string"
      indexed="true"
      stored="true"
      required="true"/>
    <field
      name="documentReferences"
      type="string"
      indexed="true"
      stored="false"
      multiValued="true"
      required="false"/>
    </fields>
</schema>

这可能吗?如果另一个字段有助于回答这个问题,我对它的索引没有问题。

我想到的解决方案之一是

  • 用文档引用本身为Id编制索引,这将确保如果文档未被任何其他文档引用,则计数将为1
  • 搜索文档引用上的所有文档Facet,然后使用计数1筛选Facet,这将是其他id未引用的id的列表
  • 会喜欢使用param,这会限制开箱即用的搜索结果
  • Documents who's id is not in any other document's documentReferences field