Solr - 过滤子文档的两个字段

问题描述 投票:0回答:0

鉴于我在 Solr 中编制索引的以下文档:

{
    "id": "a946c9c8-9adf-4f59-bf96-19612a1eeaa2",
    "content_type": "ticket",
    "title": "August",
    "type": null,
    "company_idx": null,
    "participants": [{
            "id": "98a52cb2-fab7-4b71-afbc-5488832902c7",
            "content_type": "participant",
            "type": 1,
            "company_idx": null,
        }, {
            "id": "c506f8f9-a6ec-4302-8de2-675311973aea",
            "content_type": "participant",
            "type": 2,
            "company_idx": "b919595f-f4c5-4610-9f6a-6bb2f05ea5cc",
        }
    ]
}

我将搜索子文档的两个字段(在本例中为参与者集合之一)必须与给定值匹配的文档。我尝试了许多不同的组合,我将在此处粘贴它们,但是它们都无法以产生结果或正确产生结果的方式工作。我不确定如何在 Solr 中编写这样的查询。

{!parent which="content_type:parent"}*:* AND {!child of=content_type:parent}participants.company_idx:b919595f-f4c5-4610-9f6a-6bb2f05ea5cc AND participants.type:2

{!parent which=content_type:ticket}*:* AND {!child of=content_type:participant}company_idx:b919595f-f4c5-4610-9f6a-6bb2f05ea5cc AND type:2

{!parent which='participants'}participants.company_idx:b919595f-f4c5-4610-9f6a-6bb2f05ea5cc AND participants.type:2

问题是我只想搜索孩子必须匹配 company_idx 和类型的文档。

例如

participants.company_idx:b919595f-f4c5-4610-9f6a-6bb2f05ea5cc AND participants.type:2

但是应该归还这样的文件

participants.company_idx:b919595f-f4c5-4610-9f6a-6bb2f05ea5cc AND participants.type:1

应该归还这样的文件

solr lucene solrj solrcloud
© www.soinside.com 2019 - 2024. All rights reserved.